邢台网站建设电话,网站定制 动易,郑州网站建设国奥大厦,杭州搜索推广公司1.概述
在13.0的系统rom产品开发中最近公司项目要求 禁用系统所有通知 不需要在下拉状态栏显示通知功能实现 要控制系统通知的开关功能,需要屏蔽系统通知,而系统通知都是由NoticationManagerServices.java来管理的, 这个NMS服务管理通知就需要在NotificationManagerService.…1.概述
在13.0的系统rom产品开发中最近公司项目要求 禁用系统所有通知 不需要在下拉状态栏显示通知功能实现 要控制系统通知的开关功能,需要屏蔽系统通知,而系统通知都是由NoticationManagerServices.java来管理的, 这个NMS服务管理通知就需要在NotificationManagerService.java 来实现需求
2.framework禁用系统所有通知的核心代码分析
frameworks/base/services/core/java/com/android/server/notification/NotificationManagerService.java
3.framework禁用系统所有通知的核心代码功能分析和实现
在系统中一条通知发出要经过三个进程:APP进程、System_server进程和SystemUI进程,APP进程发出通知、 System_server进程统一存储并一一通知注册的NotificationListenerService,SystemUI显示通知并处理通知点击事件。 流程说明: 当一个APP要发出通知,会调用NotificationManager.notify(),并带上APP进程的信息;APP要把通知发送到 System_server进程,需要跨进程,首先获取NotificationManagerService的代理,跨进程调用NotificationManagerService的方法; 进入NotificationManagerService,首先把通知加入到通知队列,这里使用handler消息机制保证通知的添加顺序; 然后遍历注册到NotificationManagerService中的NotificationListene