Я пытаюсь сделать снимки экрана своего устройства Android (Samsung Galaxy Tab S5e) с помощью службы.
Я использую код отсюда.
В приведенном коде , ImageReader.newInstance(mWidth, mHeight, PixelFormat.RGBA_8888, 2);. Обратите внимание на PixelFormat.RGBA_8888. Теперь это не позволяет мне скомпилировать мой проект, и меня встречает ошибка: Ошибка: Должно быть одно из: ImageFormat.UNKNOWN, ImageFormat.RGB_565... и т. д..
Я попробовал изменить PixelFormat.RGBA_8888 на ImageFormat.JPEG, и он скомпилировался. Однако теперь мое приложение вылетает с сообщением:
Буфер формата BLOB переопределения RGBA должен иметь высоту == ширину
Я пробовал изменить PixelFormat.RGBA_8888 на 0x4, 0x1, ImageFormat.RGB_565 и некоторые другие. Это часто приводит к исключению с сообщением:
Формат выходного буфера производителя 0x1 не соответствует настроенному формату буфера 0x4 ImageReader.
Это каким-то образом связано с форматом, описанным в onImageAvailable(читатель ImageReader).
Я видел после сообщения SO, и кажется правильный формат зависит от устройства, но я перепробовал их все, и ошибка одна из вышеперечисленных.
Я в полной растерянности (и я Java/ Android новичок), поэтому нам бы очень пригодилась помощь.
Подробнее здесь: https://stackoverflow.com/questions/634 ... ave-height
Ошибка снимка экрана Android: буфер формата BLOB переопределения RGBA должен иметь высоту == ширину ⇐ Android
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение