android 监听通知栏点击事件,android使用NotificationListenerService监听通知栏消息
NotificationListenerService是通过系统调起的服务,在应用发起通知时,系统会将通知的应用,动作和信息回调给NotificationListenerService。但使用之前需要引导用户进行授权。使用NotificationListenerService一般需要下面三个步骤。
注册服务
首先需要在AndroidManifest.xml对service进行注册。
android:name=".NotificationCollectorService"
android:label="@string/app_name"
android:permission="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE">
继承实现NotificationListenerService
自己实现一个继承NotificationListenerService的service,在onNotificationPosted中完成自己需要的操作。
public class NotificationCollectorService extends NotificationListenerService {
@Override
public void onNotificationPosted(StatusBarNotification sbn) {
Log.i("xiaolong","open" + "-----" + sbn.getPackageName());
Log.i("xiaolong","open" + "------" + sbn.getNotification().tickerText);
Log.i("xiaolong","open" + "-----" + sbn.getNotification().extras.get("android.title"));
Log.i("xiaolong","open" + "-----" + sbn.getNotification().extras.get("android.text"));
}
@Override
public void onNotificationRemoved(StatusBarNotification sbn) {
Log.i("xiaolong","remove" + "-----" + sbn.getPackageName());
}
}
引导用户进行授权
由于此服务需要用户手动进行授权,所以使用前需要对用户进行引导设置。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String string = Settings.Secure.getString(getContentResolver(),"enabled_notification_listeners");
if (!string.contains(NotificationCollectorService.class.getName())) {
startActivity(new Intent(
"android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS"));
}
}
}
用户授权后就可以对通知栏的所有信息进行监听了。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。
总结
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
小编个人微信号 jb51ccc
喜欢与人分享编程技术与工作经验,欢迎加入编程之家官方交流群!
android 监听通知栏点击事件,android使用NotificationListenerService监听通知栏消息相关推荐
- jquery 监听td点击事件_安卓开发监听点击事件的一种方法
本人是菜鸟一只,学习安卓纯属兴趣.没有真正上过编程课程,所有知识都是在网上获取的.今天分享的是监听点击事件的一个方法,这个方法的好处是代码较简洁. 如图,点击保存时,把上面的数据入库. 实现如下: 在 ...
- android 表格控件点击事件,Android零基础入门|RecyclerView点击事件处理
原标题:Android零基础入门|RecyclerView点击事件处理 前面两期学习了RecyclerView的简单使用,并为其item添加了分割线.在实际运用中,无论是List还是Grid效果,基本 ...
- android重写返回按钮点击事件,Android Fragment监听返回键
场景:在项目中做联系人界面时,需要按名字和按部门显示联系人,此处使用2个fragment切换显示,按部门显示需要体现部门层级关系,需要实现点击返回上级部门.因为Fragment并不能像在Actvity ...
- android通知栏的点击事件,Android监听消息通知栏点击事件
Android监听消息通知栏点击事件 使用BroadCastReceiver 1 新建一个NotificationClickReceiver 类,并且在清单文件中注册!! public class N ...
- android通知栏显示,通知栏点击事件监听
android通知是通过Notification来实现的,显示在通知栏,不管是系统通知还是本地通知都可以通过Notification显示在通知栏中. 通知显示参考:https://blog.csdn. ...
- android列表项点击事件,Android 开发 tips(2):监听 Listview 列表项点击事件
Android 开发 tips(2):监听 Listview 列表项点击事件 (这篇和上篇本来是应该一起写的,但是太过冗长,附链接:[SimpleAdapter 在 Listview 中的应用] ht ...
- Android中按钮的点击事件的四种写法
如题,在Android中按钮的点击事件有四种写法,如下图. 界面为四个Button+一个TextView+一个ImageView activity_main布局文件如下: <?xml versi ...
- textview点击事件 android,Android给TextView添加点击事件的实现方法
首先设定TextView的clickable属性为true. 可以在布局文件中进行设定,比如: android:id="@+id/phone" android:clickable= ...
- Android 如何判断鼠标点击事件
Android 如何判断鼠标点击事件 参考以下的文字 http://blog.csdn.net/shanghaibao123/article/details/49494039 http://blog. ...
- android include 点击事件,Android 多个include标签的监听事件处理
include标签的作用是为了xml文件代码的模块化,详细不再多提.主要是说说include标签的监听. 网上也有很多例子,不过大多是只写了一个include标签的监听,如果需要实现多个include ...
最新文章
- fatal error: Python.h: No such file or directory 解决
- 数据结构和算法之——跳表
- idea 往 Github 上 push 失败
- Python数据分析pandas之分组统计透视表
- 【C++ Primer学习笔记】第2章:变量和基本类型
- 大数据技术 学习之旅_如何开始您的数据科学之旅?
- ubuntu高版本环境变量问题
- 经典排序算法(十五)--耐心排序Patience Sorting
- MySQL修改、删除存储过程和函数
- wxpython如何分开界面和运行代码_wxpython笔记:wxpython的界面布局方式(一)
- 查看字节码的插件jclasslib设置成英文
- 从底层看android5.0系统的启动过程
- Au入门系列之七:效果器
- 微软快捷键截图_如何在Microsoft Office的屏幕提示中显示快捷键
- pyhong爬虫——大众点评——用户信息
- 计算机设备2后符号,表情符号含义展示的方法及设备与流程
- 杂记-2018.04.09
- 2022数据库系统工程师 下午 试题三 真题答案
- opencl 核函数创建存储器对象以实现向量
- [转载]Eclipse开发工具简介