個人最近在研究安卓通知欄,網上介紹activity中使用通知欄的例子倒是非常;一般就是就是獲取notificationManager,然后再notification.buildr創建一個notification對象(同時在創建一個PendingIntent封裝Intent)最后再通過notificationManager調用notify(id,notificaion)。于是我就去分析notify();在分析該方法時里面先向serviceManager獲取一個IBindr對象再調用INotificationManager一個方法返回一個INotificationManager,然后在notify()方法中獲取pkg 、oppkg、notification.clone()等等,最后通過INotifationManager調用enqueueNotificationWithTag(),在enqueueNotificationWithTag()中通過怕parcel類再把傳進來的參數進行數據封裝,最后使用mRemote.transact()函數,然后,我在就去binder類中分析transact()該方法發現該方法去調用本地方法。目前分析實在非常亂,我個人還是第一次接觸這個安卓操作系統。希望大神分析過安卓通知欄可以提供一些資料給我幫幫我。
- 0 回答
- 0 關注
- 1375 瀏覽
添加回答
舉報
0/150
提交
取消