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