Как получить экранное содержание устройства на базе Android? [дубликат]

Возможный дубликат:
Как программно сделать снимок экрана на Android?

Как получить устройство на базе Android экранируют содержание и сделать файл изображения с помощью данных снимка? Который API я должен использовать или где я мог найти связанные ресурсы?

BTW: не снимок камеры, но экран устройства

49
задан Community 23 May 2017 в 00:31
поделиться

3 ответа

Согласно этой ссылке, можно использовать ddms в каталоге tools в android sdk для создания снимков экрана.

Чтобы сделать это внутри приложения (а не во время разработки), также существуют приложения для этого. Но, как указывает @zed_0xff, для этого, конечно, требуется root.

13
ответ дан 7 November 2019 в 11:21
поделиться

AFAIK, все методы, которые сейчас используются для создания снимков экрана Android, используют буфер кадра / dev / graphics / fb0. Это включает в себя ddms. Для чтения из этого потока требуется root. ddms использует adbd для запроса информации, поэтому root не требуется, поскольку adb имеет разрешения, необходимые для запроса данных из / dev / graphics / fb0.

Буфер кадра содержит 2+ «кадра» изображений RGB565. Если вы можете читать данные, вам нужно знать разрешение экрана, чтобы знать, сколько байтов необходимо для получения изображения. каждый пиксель составляет 2 байта, поэтому, если разрешение экрана было 480x800, вам нужно было бы прочитать 768000 байтов для изображения, поскольку изображение 480x800 RGB565 имеет 384000 пикселей.

23
ответ дан 7 November 2019 в 11:21
поделиться

, если вы хотите сделать снимок экрана из кода Java в приложении Android AFAIK, у вас должны быть Root-права.

5
ответ дан 7 November 2019 в 11:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: