Ваше изображение выглядит отфильтрованным. Чтобы это исправить, вы можете позвонить:
backgroundPaint.setFilterBitmap(false)
Тогда возникает вопрос, почему это происходит только на устройствах Samsung? Очевидно, что программисты приложений должны быть в состоянии предсказать, в каком состоянии находятся их Paint
объекты, иначе их приложения сломаются (как у вас).
Итак, я пробежал мимо нескольких устройств в своей тестовой лаборатории. Похоже, что значение по умолчанию isFilterBitmap()
(FILTER_BITMAP_FLAG
) изменилось в API 29, хотя я не могу найти его в исходном коде (если кто-то может его найти или у него есть дополнительные сведения, пожалуйста, добавьте комментарий или предложите редактировать!)
Device API level isFilterBitmap() default
---------------------------------------------------------------------
Pixel 3 XL 29 true
Pixel 2 XL emulator 29 true
Pixel 2 XL emulator 28 false
Pixel 2 emulator 26 false
Samsung S6 25 false
Samsung S4 21 false
Droid RAZR 16 false