0

My MainActivity устанавливает будильник (или несколько сигналов тревоги). Когда идет тревога, я хочу показать AlertDialog, который воспроизводит звуковой сигнал, показывает информацию о тревоге и что-то вроде OK и удаляет, после чего он должен вернуться к моей MainActivity.Диалоговое окно AlarmManager (Alert) Dialog

Если я прочитал это право, я не могу создать AlertDialog из BroadcastReceiver, потому что это не Activity.

Итак, каков наилучший способ сделать это?

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

EDIT: Я только что узнал, что мне, вероятно, не нужно использовать приемник, я могу просто открыть свою главную, получить дополнительные функции из намерения, а затем открыть диалоговое окно.

Есть ли причина не для этого?

ответ

0

Для этого вам необходимо использовать действие. Сделайте примерно следующее:

  1. Используйте приемник, чтобы начать свою основную деятельность.
  2. Используйте Основное действие, чтобы показать AlertDialog.
+0

Я только что узнал, что мне, вероятно, не нужно использовать приемник, я могу просто открыть свою главную, получить дополнительные функции от намерения, а затем открыть диалоговое окно. Есть ли причина не в этом? – TeKo

+0

@TeKo Ну, широковещательный приемник - это то, что «получает» сигнал от AlarmManager. Без этого телефон отправит сигнал о том, что «что-то должно произойти», но он не знает, что. Для этого нужен приемник. Он «получает» сигнал, чтобы вы могли запустить Activity. Что касается использования двух видов деятельности, я неверно истолковал ваш вопрос. Я обновил свой ответ. Вам не нужно использовать 2 действия. Вам нужно было бы это сделать, если бы вы хотели по-разному реагировать на то, был ли пользователь положительным нажал или отрицательно нажал на DialogFragment. – Don

+0

Когда я просто использовал приемник для запуска MainActivity, я мог бы просто запустить MainActivity с помощью будильника. Затем я получаю дополнительные функции от Intetent, чтобы показать правильный диалог, если никаких дополнительных функций я не делаю. Кажется, работает до сих пор. Спасибо за помощь. – TeKo