2012-05-30 2 views
0

Как можно разбудить приложение из кода?Монодидок: приложение для пробуждения

Я пишу простой таймер, и когда время истекает, оно отображает изображение на основной деятельности. Но это означает, что приложение должно постоянно оставаться на экране. Если пользователь переключается на другое приложение (или просто нажимает на «Домой»), моя активность больше не отображается, и мне нужно снова показать ее на экране (переключиться обратно в мое приложение) так, как это происходит на обычном телефоне Android или таймере.

Так что на самом деле 2 вопроса:

  1. Как получить приложение на «верхней» части экрана?
  2. Как правильно отображать приложение, когда экран заблокирован?

ответ

1

Для этого вам понадобится служба, которая начнет вашу деятельность при срабатывании таймера.

Вы можете взглянуть на Android Alarm Clock исходный код для того, как иметь активность Показанные даже на экране блокировки: https://github.com/android/platform_packages_apps_alarmclock/blob/master/src/com/android/alarmclock/AlarmAlertFullScreen.java

Примечание особенно линии 85 до 90, здесь флаги добавляются так, что допускается для отображения на экране блокировки. Разумеется, это также должно работать с Mono для Android.

На ваши вопросы также есть приятный ответ: Wake Android Device up Должно быть довольно легко переносить в Mono для Android.

+0

Спасибо за ответ - он работает. Еще один маленький вопрос - можно ли перезапустить приложение из одного и того же состояния? У меня есть несколько видов деятельности и службы. Я знаю, как запустить только один. Могу ли я перезапустить приложение, как если бы я снова запустил приложение - он возобновляется с одного и того же пункта? –