首页 > 解决方案 > 即使应用程序在前台运行,onNotificationPosted 方法也不会被调用

问题描述

我正在做一个应用程序,我将在其中捕获所有通知并将其保存在我的应用程序中。我正在使用BIND_NOTIFICATION_LISTENER_SERVICE服务,并且我创建了一个扩展NotificationListenerService该服务的类。

我已经在Manifest文件中指定了必要的权限和服务。

我已经在 NotificationListener 服务类return START_STICKY的函数中指定了。onStartCommand()


问题:(设备 - Redmi Note 5 Pro)

onNotificationPosted()功能仅在安装后 10 到 15 分钟有效。15 分钟后,当我关闭并再次打开它时,即使应用程序在屏幕上打开(前景)onNotificationPosted()在接收通知时也不会被调用。我尝试手动触发服务,当我这样做时,onStartCommand()被调用但onNotificationPosted()之后也不起作用。

我检查了服务运行列表,并在列表中找到了我的应用程序包名称。因此,服务已启动并正在运行,但没有按预期运行。

onNotificationPosted()至少在手动触发通知后,应在接收通知时调用预期行为。

我可以理解android会在后台运行时终止服务以提高性能。为什么即使应用程序在前台它也不起作用。如果我做错了什么,请纠正我。

感谢您的时间..(:

标签: android

解决方案


推荐阅读