Android - 关于通知收到的事件?

时间:2015-02-07 13:41:36

标签: android events

我想创建一个如下所示的Android服务:

每次我收到通知栏上的通知时,

该服务将读取该消息。如果邮件包含预定义的单词,

将LED闪烁红色。 (例如)。

是否有任何新通知事件?

类似的东西:

@override 
public void onNotification(Notification n) {
   if(n.getMsg().contains("Some Keyword")) {
      LEDMenager.blink(LEDManager.COLOR_RED);
   }
}

提前致谢!

2 个答案:

答案 0 :(得分:1)

您需要将服务设置为AccessbilityService,这样您就可以访问所有通知。

Accessibility Service

每次收到通知时,您都可以通过此回调访问

onAccessibilityEvent

答案 1 :(得分:1)

在API级别18+上,您可以使用NotificationListenerService,当您从状态栏发布或删除通知时,您将收到回调。

在较旧的API级别上,您可以通过@Aadi Droid提到的AccessibilityService使用黑客攻击。

加分:blog post,其中包含NotificationListenerService的示例。