在应用程序处于后台Android时创建通知

时间:2012-01-10 08:52:28

标签: android notifications

初步说明:

我的应用程序处理某些事件并执行与该事件相关的任务,即使应用程序在后台也是如此。我正在使用接收器。

问题描述

我想在活动开始或结束时显示通知。

我做了什么

我使用了通知管理器: - 但是我需要在主屏幕上显示通知而不是通知栏。

我使用了App小部件: - 但是用户无法轻易注意到app小部件信息的任何变化,因为这不会产生任何引人注目的效果。

我使用Toast: - 但是这有时间限制要显示,我想在用户关闭之前显示通知。

那么选项应该是什么?我该怎么办?

请参考下图,我想要的

enter image description here

2 个答案:

答案 0 :(得分:2)

不幸的是,您已经探索了所有可能的选项。没有故意提供您想要实现的目标,因为它会导致非常糟糕的用户体验。想象一下,当您查看电子邮件时,会弹出一个通知(您想要的那种)!

注意盗版

当您的应用处于前台时,您可以做很多事情。

当您的应用不在前台时,只有两个选项

  • 开始活动:必须在必要时(例如来电活动)执行此操作。如果用户认为它更有刺激性而不是有用,那么你的应用就会耗尽!
  • 使用通知管理器。

答案 1 :(得分:0)

选项是使用Alert Dialogs

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();

或者您可以使用对话主题运行活动。