检查我的应用程序的通知是否正在运行

有没有办法我可以以编程方式检查我的应用程序的通知当前是否正在运行(显示)?

也就是说,调用了NotificationManager.notify()

有没有办法我可以以编程方式检查我的应用程序的通知当前是否正在运行(显示)?

没有。

也就是说,调用了NotificationManager.notify()。

你调用了notify() 。 因此,您已经知道是否调用了notify() 。 您还知道您的代码是否调用cancel()cancelAll() 。 如果Notification根据用户操作消失,您还将通过各种PendingIntents和标志知道。 因此,您自己拥有所有信息,以确定Notification是否在屏幕上。

但是,精明的开发人员会编写他们的应用程序,以便他们不关心他们的Notification是否在屏幕上。

有没有办法我可以以编程方式检查我的应用程序的通知当前是否正在运行(显示)?

是。 看看这个: 如何通过清除按钮知道我的通知何时被清除?

@ octavian-damiean说:

看起来您正在寻找Notification类的deleteIntent字段。

您可以在API 23及更高版本中使用。 只需调用NotificationManager.getActiveNotifications()