Alertdialog фонового приложения на текущем экране - PullRequest
2 голосов
/ 02 апреля 2012

Если приложение находится в фоновом режиме и при каком-либо событии оно отображает Alertdialog. Диалог отображается в пределах активности приложения. Однако я хочу, чтобы он отображался на экране, на котором в данный момент находится пользователь. Так что, если пользователь находится на рабочем столе, а приложение - в фоновом режиме, всплывающее окно должно отображаться на рабочем столе ». Является ли это возможным? Как?

Ответы [ 2 ]

1 голос
/ 02 апреля 2012

Если действие находится в фоновом режиме, оно приостанавливается. Если вы выполняете некоторую фоновую задачу в упражнении в отдельном потоке, вам, вероятно, следует перенести эту работу в службу. Чтобы предупредить пользователя о событиях, происходящих в фоновом режиме, используйте уведомление.

Это для вашей выгоды, а также для пользователя. Если вы перенесете свою деятельность на передний план, пока пользователь делает что-то еще, пользователю не понравится ваше приложение. Он может работать или не работать, но он противоречит правилам Android Руководство по разработке уведомлений .

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

1 голос
/ 02 апреля 2012

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

http://developer.android.com/guide/topics/ui/notifiers/notifications.html

...