永久 运行 通知监听器
Permanently running notification listener
我正在尝试编写一个应用程序,它将永久侦听任何传入的通知,然后对其进行处理。我在制作通知侦听器的第一个障碍上苦苦挣扎,该侦听器即使在应用程序处于后台时也可以永久 运行 。关于从哪里开始的任何建议将不胜感激?
谢谢
您应该使用服务来实现此目的。
一种服务,当发布或删除新通知或它们的排名发生变化时从系统接收调用。
您应该有一个 android 服务 class 实现了 NotificationListener()
class NotificationListenerService: NotificationListener() {
override fun onBind(intent: Intent) {
return super.onBind(intent)
}
override fun onNotificationPosted(sbn: StatusBarNotification) {
// Implement what you want here
}
override fun onNotificationRemoved(sbn: StatusBarNotification) {
// Implement what you want here
}
}
另一件需要做的事情是将它放在清单文件中:
<service android:name=".NotificationListener"
android:label="@string/service_name"
android:permission="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE">
<intent-filter>
<action android:name="android.service.notification.NotificationListenerService" />
</intent-filter>
希望对您有所帮助!
更多详情请参考:https://developer.android.com/reference/android/service/notification/NotificationListenerService
我正在尝试编写一个应用程序,它将永久侦听任何传入的通知,然后对其进行处理。我在制作通知侦听器的第一个障碍上苦苦挣扎,该侦听器即使在应用程序处于后台时也可以永久 运行 。关于从哪里开始的任何建议将不胜感激?
谢谢
您应该使用服务来实现此目的。
一种服务,当发布或删除新通知或它们的排名发生变化时从系统接收调用。
您应该有一个 android 服务 class 实现了 NotificationListener()
class NotificationListenerService: NotificationListener() {
override fun onBind(intent: Intent) {
return super.onBind(intent)
}
override fun onNotificationPosted(sbn: StatusBarNotification) {
// Implement what you want here
}
override fun onNotificationRemoved(sbn: StatusBarNotification) {
// Implement what you want here
}
}
另一件需要做的事情是将它放在清单文件中:
<service android:name=".NotificationListener"
android:label="@string/service_name"
android:permission="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE">
<intent-filter>
<action android:name="android.service.notification.NotificationListenerService" />
</intent-filter>
希望对您有所帮助!
更多详情请参考:https://developer.android.com/reference/android/service/notification/NotificationListenerService