当前位置: 首页 > 知识库问答 >
问题:

服务结束后通知立即消失

纪辰沛
2023-03-14

我有一个服务,刮一个网站的数据,然后如果有必要给用户一个通知。

我遇到的问题是,一旦服务关闭,通知就会消失(可能是立即)。下面的代码是应用程序的所有通知代码。我没有输入任何代码来取消通知。

public static void CreateNotificationCompat(int notificationID, String link, String title, String text, Context ctx)
{
    Intent notificationIntent = new Intent("android.intent.action.VIEW", Uri.parse(link));
    PendingIntent contentIntent = PendingIntent.getActivity(ctx.getApplicationContext(), 0, notificationIntent, 0);

    NotificationManager nm = (NotificationManager) ctx
            .getSystemService(Context.NOTIFICATION_SERVICE);

    NotificationCompat.Builder builder = new NotificationCompat.Builder(ctx);
    Resources res = ctx.getResources();

    builder.setContentIntent(contentIntent)
                .setSmallIcon(R.drawable.notify_icon)
                .setWhen(System.currentTimeMillis())
                .setContentTitle(title)
                .setContentText(text)
                .setAutoCancel(false);

    Notification n = builder.getNotification();

    nm.notify(notificationID, n);
}

共有1个答案

松安民
2023-03-14

您发布的代码有效。我在jb上的一个活动和一个服务中测试了它,当组件停止时,通知将保持不变。我甚至验证了我可以杀死进程,通知保持不变。试着剥离应用程序,看看问题是否仍然存在。特别检查,以确保您不会在通知上错误地调用cancel。

 类似资料:
  • 我的应用程序设置为(非故意)服务将使用gps/网络侦听器轮询位置。它工作得很好,因为我负责服务何时结束(即在找到新位置或达到超时时调用stopSelf())。然而,我最近读到,intentService可能更适合长时间运行的任务,因为它不是在ui线程上运行的,而是在自己的工作线程上运行的。问题是,现在它不允许服务在任何时间运行(我假设这是因为服务中没有任何活动发生,而侦听器等待接收位置,因此服务本

  • 强制结束有托盘图标的进程后,需要把鼠标移到托盘图标时,图标才会消失。想图标立即消失,用以下代码即可: FindWindow $0 "Shell_TrayWnd" FindWindow $0 "TrayNotifyWnd" "" $0 FindWindow $1 "ToolBarWindow32" "" $0 ;Win2K StrCmp $1 0 0 +3 FindWindow $0 "SysPag

  • 我参考了以下链接来研究Android中通知服务的演示示例:Sai Geetha博客和Vogella教程。 这两个项目都起到了作用,但都是部分的,也就是说,我已经按原样下载并执行了这两个项目。两者都有启动通知的按钮。单击按钮时,状态栏顶部会显示通知。 问题来了,点击该通知后,既不会显示任何消息,也不会激发浏览新活动的意图。 我对这个概念还不熟悉,所以非常感谢您的帮助。。。 创建通知。班 通知接收者。

  • 在Mac OS X 10.8机器上,我有一台Tomcat 7.0.40服务器和一台客户端,都在本地运行。通过三方握手建立TCP连接,然后立即从服务器发送FIN、ACK和RST。客户端收到“来自服务器的文件结束”或“连接重置”。 TCP序列: 客户端SYN 服务器SYN,确认 客户端确认 服务器[TCP窗口更新]确认字符 服务器FIN,确认字符 客户端确认字符 服务器[TCP Dup确认字符]确认字

  • 我正在开发一个倒计时应用程序,目前正在尝试在倒计时运行时退出应用程序时显示通知。相应地,我希望在用户返回应用程序时通知消失。 到目前为止,我已经设法使它适用于带有静态文本的简单通知,执行以下操作:在MainActivity.java中,在onStop()中,我创建一个意图并使用start Service(意图)启动服务。对称地,在onStart()中,我运行stop Service(意图),以便当