2014-07-18 4 views
0

Я хочу сохранить как изображение, которое находится на экране мобильного телефона Android с интервалом времени в 10 секунд. Каким может быть экран домашнего экрана или экран меню или любая вещь. Может ли кто-нибудь сказать мне, как я могу это достичь? У меня был успех для моего приложения, но он не захватывал экран меню как изображение.Сохранить как изображение, которое находится на экране андроида

ответ

0

К сожалению, на большинстве устройств невозможно получить снимок устройства вне приложения. Это, очевидно, по соображениям безопасности.

Этого можно достичь, обратившись к буферу кадра /dev/graphics/fb0, но обычно у вас нет разрешений на его чтение.

0

Для достижения этого вам необходим root-доступ. Напишите background service и выполните «/ system/bin/screencap», чтобы получить снимок экрана. Проверьте this answer, чтобы узнать, как получить снимок экрана и сохранить его в sdcard.

В качестве альтернативы вы можете использовать Android Screenshot library, чтобы получить скриншоты на некорневых телефонах, но для этого ваш телефон должен быть подключен к вашему рабочему столу с помощью ADB.

+0

Я все готов написать фоновое обслуживание, чтобы сделать снимок экрана, но не с помощью команды su. Можете ли вы сказать мне, что этот пример также работает для ненарушенных устройств? Я не могу использовать эту библиотеку, потому что я пишу сетевое приложение, поэтому нет опции для USB. – user3755026

+0

Хорошо. Но если это правда, то как это приложение работает? https://play.google.com/store/apps/details?id=com.edwardkim.android.screenshotitfullnoroot&hl=ru – user3755026

+0

Нет, вы не можете добиться этого на некорректном устройстве. Вам нужна привилегия суперпользователя. –

Смежные вопросы