Могу ли я сделать скриншот домашнего экрана из своего приложения в виде приложения? - PullRequest
0 голосов
/ 03 сентября 2011

Я разрабатываю приложение, которое позволяет пользователю выбирать обои из галереи и устанавливать их в качестве обоев устройства. Я хочу сделать предварительный просмотр каждой картинки в галерее, так как это настоящие обои. Предварительный просмотр - это скриншот домашнего экрана со всеми виджетами и значками и выбранной картинкой в ​​качестве обоев устройства.

Я думаю о двух вариантах:

1) Измените текущие обои на изображение, которое просматривает пользователь. Затем сделайте скриншот рабочего стола с этими обоями и всеми виджетами и значками. Затем покажите этот скриншот пользователю и поставьте настоящие обои обратно.

2) Получить все виджеты и значки положения, нарисовать его на картинке, которую смотрит пользователь.

Я не знаю, как реализовать любой из этих вариантов. Если у тебя есть идеи, помоги мне.

Ответы [ 3 ]

1 голос
/ 03 сентября 2011

Вам необходим root-доступ для захвата скриншотов без инструментов отладки на большинстве устройств.Я рекомендую выполнять действия на домашнем экране, которые рисуют текущий макет, но это зависит от того, позволяет ли выбранная пользователем домашняя программа запуска получить доступ к текущему макету.Также может быть полезно зарегистрировать вашу деятельность / приложение в качестве селектора обоев (появляется в списке, когда вы нажимаете «Обои» в меню на большинстве домашних экранов) - QuickPic делает это, я думаю, что это где-то часть API.

1 голос
/ 04 сентября 2011

сделайте один похожий на настоящий рабочий стол (поддельный рабочий стол) с вашими собственными данными (не пользовательские значки или виджеты), по крайней мере, вы можете показать ему рабочий стол для сравнения

1 голос
/ 03 сентября 2011

В Android SDK нет поддержки скриншотов. И у вас нет возможности определить «положение виджетов и значков». Следовательно, ни то, что вы хотите сделать, будет невозможно.

...