Как запланировать задачу, всплыть предупреждение и перейти на домашний экран телефона? - PullRequest
0 голосов
/ 19 октября 2011

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

timer.schedule(task, calendar.getTime());

Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);                      

f.alert(context, title, msg + "Task scheduled for: " calendar.getTime());

Метод оповещения, который я написал из alertDialog, работает нормально.Но при выполнении кода предупреждение не отображается.Может быть, я использую неправильный контекст?

[EDIT] Там вся история.У меня есть два сценария.Я разрешаю пользователю запускать задачу сейчас или позже.Если он выберет «Сейчас», он получит экран с индикатором выполнения, предлагающий ему подождать, пока задача не будет выполнена.В противном случае, если он выберет «Позже», я хочу запланировать задачу с помощью Timer, показать предупреждение или тост, а затем перейти на главный экран.Задание ожидает фон для выполнения.Итак, чтобы пропустить индикатор выполнения (ожидая нужного времени для запуска задачи), я хочу «выйти» из приложения и перейти на домашний экран телефона.

1 Ответ

0 голосов
/ 19 октября 2011

Вы должны показать предупреждение, прежде чем начинать домашнюю деятельность - ваша активность сразу же приостанавливается, когда вы звоните startActivity. Вы, вероятно, хотите использовать Toast, а не AlertDialog, так как на этом этапе вам почти наверняка не понадобится какой-либо пользовательский ввод; если вы не можете использовать AlertDialog, вам придется либо отложить переключение на домашнее задание, пока они не нажмут на него «ОК», либо начать новое занятие с прозрачной темой, чтобы разместить диалог, появляющийся поверх дома. экран.

...