1 mPolicy:WindowManagerPolicy
mPolicy是WindowManagerPolicy類型的變量。WindowManagerPolicy是窗口管理策略的接口類,用來定義一個窗口策略所要遵循的通用規範,並提供了WindowManager所有的特定的UI行爲。它的具體實現類爲PhoneWindowManager,這個實現類在WMS創建時被調用。 WMP運行定製窗口層級和特殊窗口類型以及關鍵的調度和佈局
2 mSessions: ArraySet
mSessions是ArraySet類型的變量,元素類型爲Session,它主要用於進程間通信,其他營業程序進程想要和WMS進程進行通信就需要經過Session,並且每個應用程序進程都會對應一個Session,WMS保存這些Session用來記錄所有向WMS提出窗口管理服務的客服端
3 mWindowMap:WindowHashMap
mWindowMap是WindowHashMap類型的變量,WindowHashMap繼承了HashMap,它限制了HashMap的key值得類型爲IBinder,value值類型爲WindowState.WindowState用於保存窗口的信息,在WMS中它用來描述一個窗口,mWindowMap就是用來保存WMS中各種窗口的集合
4 mFinishedStarting:ArrayList
mFinishedStarting是ArrayList類型的變量,元素類型爲AppWindowToken,它是WindowToken的子類。
WindowToken的作用:
1) 可以理解爲窗口令牌,當應用程序想要向WMS申請新創建一個窗口,則需要向WMS出示有效的WindowToken。AppWindowToken作爲WindowToken的子類,主要用來描述應用程序的WindowToken結構,應用程序中每個activity都對應一個AppWindowToken。
2)WindowT