我对Android中的辅助功能服务有疑问 我可以在状态栏中捕获通知并从通知中获取信息吗?
我的目的是抓住像Viber,Skype这样的应用程序的通知。
这可能吗?
答案 0 :(得分:9)
您可以查看NotificationListenerService。不确定它是否能满足您的需求但是根据文档:
在发布或删除新通知或其排名发生变化时接收来自系统的来电的服务。
您可以使用 getActiveNotifications()获取有效通知。 以为我从来没有测试过这个,也不知道它是否在状态栏中收到其他应用程序通知,或者只是你的。
这是该方法的当前描述:
请求未完成通知的列表(即当前用户可见的通知)。当你不知道已发布的内容时很有用。
您可以获得更多信息@ NotificationListenerService
注意:此方法仅适用于API 18。
进一步调查我发现了另一个用户关于如何使用NotificationListenerService的示例:
https://github.com/kpbird/NotificationListenerService-Example
AccessibilityService用于处理辅助功能:
辅助功能服务在后台运行并接收回调 在触发AccessibilityEvents时由系统。这类事件表示 用户界面中的某些状态转换,例如焦点 已更改,已单击按钮等。此类服务可以 可选地请求查询内容的功能 活动窗口。开发可访问性服务需要 扩展这个类并实现它的抽象方法。
答案 1 :(得分:4)
您可以使用NotificationListenerService,它易于使用,请查看this blog post。