Установка BitmapDrawable tileMode заставляет приложение перезапускаться
Хотя на большинстве устройств мое приложение работает нормально, на некоторых устройствах (пока LG G3, Samsung Galaxy S6) произошла странная ошибка, которую я не могу развернуть:
настройка tileMode
(либо через XML, либо программно) к чему угодно (clamp
/repeat
/mirror
) на BitmapDrawable
, это фон макета, делает этот фон полностью черным, и приложение перезапускается через ~20 секунд - без каких-либо признаков того, что что-то идет не так (никаких сообщений в LogCat, ни один из этих обратных вызовов моей деятельности не вызывается: onPause()
, onStop()
, onDestroy()
).
Как было некоторое несоответствие между этими зависаниями / сбоями в зависимости от Bitmap
будучи использованным, я начал играть с .png
изображения, и выяснил, что я могу избавиться от (большинства) этих сбоев, если я уменьшу размер этих изображений (<200x200).
поскольку
есть еще некоторые сбои и
Я не могу быть уверен в том, что размер порога для всех устройств
Я все еще ищу общее решение, может быть, некоторые из вас могут мне помочь.
1 ответ
Хотя эта тема была не совсем о той же проблеме, что и я, она мне случайно помогла. Настройка layerType
рассматриваемого макета в software
лайк
android:layerType="software"
, или жеview.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
сделал черный фон и перезапуски приложения исчезают.
Выяснилось также, что уменьшение фоновых изображений не решило проблему, а только сделало так, чтобы оно появлялось реже.
Спасибо за помощь pskink в любом случае!