1.前言
在11.0的系统rom产品定制化开发中,在systemui模块中关于下拉状态栏这块也是非常重要的部分,最近在关于systemui下拉通知栏的每条通知部分 要求去掉通知栏通知的长按事件,不需要长按功能,所以就需要分析下关于长按事件是在哪里注册的,然后去掉就可以了,接下来分析实现相关功能
2.SystemUI下拉通知栏通知去掉长按事件的核心类
frameworks\base\packages\SystemUI\src\com\android\systemui\statusbar\notification\row\ExpandableNotificationRowController.java
frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationGutsManager.java
3.SystemUI下拉通知栏通知去掉长按事件的核心功能分析和实现
在android系统中,Android应用在发送通知的流程中,都需要先用Notification.Builder来构建一个通知,然后NotificationManager.notify() 来将这个通知发送出来。发送出来的通知Notification将通过Binder通信, 在框架中被处理后,封装成StatusBarNotification,传递到systemUI系统应用中,在通知栏中呈现出ExpandableNotificationRow, 所以说在系统systemui的下拉状态栏的通知栏中,关于构建通知的核心类就是在ExpandableNotificationRow.java中负责 构建的通知布局