2010-09-30 1 views
3

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

Спасибо!

+0

есть u разрешено? – nida

ответ

7

AFAIK, только действия могут отображать диалоги. Если да, и если ваш BroadcastReceiver зарегистрирован в результате действия через registerReceiver(), вы настроены - просто используйте эту активность. Если, однако, ваш BroadcastReceiver зарегистрирован в манифесте, я думаю, у вас не будет выбора, кроме как сделать что-то еще.

Например, вы можете отправить заявку на вещание Intent. Ваша текущая работа - если она есть - имела бы высокий приоритет BroadcastReceiver для этого Intent, после чего может появиться диалог, когда он получит широковещательную передачу. Если, однако, ни одно из ваших действий не будет отображаться на экране, вы можете иметь зарегистрированный с низкой частотой приоритет BroadcastReceiver, чтобы получить трансляцию, если вы хотите отобразить Notification или что-то в этом роде. Here is a blog post, который покрывает немного больше об этом шаблоне.

+0

Я регистрирую приемник через registerReceiver(), но когда я пытаюсь отобразить диалог из метода onReceive, он не отображается. В чем может быть проблема? – smitten

+0

@smitten: Не знаете, какой «контекст» вы используете для диалога - убедитесь, что это «Активность». В противном случае, AFAIK, это должно работать нормально. – CommonsWare

+0

Что-то еще было не так. Это работает! Благодарю. – smitten

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

  • Нет связанных вопросов^_^