我想创建一个如下所示的Android服务:
每次我收到通知栏上的通知时,
该服务将读取该消息。如果邮件包含预定义的单词,
将LED闪烁红色。 (例如)。
是否有任何新通知事件?
类似的东西:
@override
public void onNotification(Notification n) {
if(n.getMsg().contains("Some Keyword")) {
LEDMenager.blink(LEDManager.COLOR_RED);
}
}
提前致谢!
答案 0 :(得分:1)
您需要将服务设置为AccessbilityService,这样您就可以访问所有通知。
每次收到通知时,您都可以通过此回调访问
onAccessibilityEvent
答案 1 :(得分:1)
在API级别18+上,您可以使用NotificationListenerService,当您从状态栏发布或删除通知时,您将收到回调。
在较旧的API级别上,您可以通过@Aadi Droid提到的AccessibilityService使用黑客攻击。
加分:blog post,其中包含NotificationListenerService
的示例。