Создать уведомление, когда приложение находится в фоновом режиме, Android - PullRequest
1 голос
/ 10 января 2012

Исходное описание:

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

Описание проблемы

Я хочу показать уведомление, когда событие начинается или заканчивается.

Что я еще сделал

Я использовал менеджер уведомлений: - Но мне нужно показывать уведомление на домашнем экране, а нев панели уведомлений.

Я использовал виджет приложения: - Но пользователь не сможет легко заметить какие-либо изменения в информации в виджете приложения, потому что это не дает никакого эффектного эффекта.

Я использовал Toast: - Но это имеет ограничение по времени, чтобы показать, я хочу показать уведомление, пока пользователь не закроется.

Так, что должно быть вариант?Как я могу сделать свою задачу?

Пожалуйста, обратитесь к изображению ниже, как то, что я хочу

enter image description here

Ответы [ 2 ]

2 голосов
/ 10 января 2012

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

Пиратство внимания

Когда ваше приложение находится вна переднем плане , вы можете делать много вещей.

Когда ваше приложение не на переднем плане , есть только два варианта

  • Запуститьактивность: Вы должны делать это только в случае необходимости (например, активность входящего телефонного звонка).Если пользователь посчитает это более раздражающим, чем полезным, ваше приложение рухнет!
  • Используйте диспетчер уведомлений.
0 голосов
/ 10 января 2012

Можно использовать Диалоговые окна оповещений

AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("Are you sure you want to exit?")
       .setCancelable(false)
       .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
           public void onClick(DialogInterface dialog, int id) {
                MyActivity.this.finish();
           }
       })
       .setNegativeButton("No", new DialogInterface.OnClickListener() {
           public void onClick(DialogInterface dialog, int id) {
                dialog.cancel();
           }
       });
AlertDialog alert = builder.create();

Или вы можете использовать запуск действия с темой диалога.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...