第1個主題: Android的哲學思考 1. 造型簡單、內涵豐富、無限重複 2. Android的IOC 3. APK與API 第2個主題:Android Application Framework揭秘 1. CS結構:應用程式框架中的Manager通用的結構 2. Manager與Service一一對應 3. 跨進程通訊與AIDL 第3個主題:Android中啟動一個新的應用程式揭秘 1. 當我們觸摸Android螢幕中Launcher上的一個應用程式的表徵圖的時候到底發生怎樣的調用過程? 2. 應用程式的執行入口到底在哪裡? 3. 一個新的Android應用程式的進程到底是怎麼產生的? 第4個主題:Dalvik VM 1. Dalvik VM的特點,Dalvik VM和JVM的比較 2. Dalvik VM的記憶體分布及OOM(Out of Memory)的根本原因和解決方案是什嗎? 3. Preload Classes和 Preload Resources,ClassLoader到底在哪裡? 4. Dalvik與Java和C/C++ 第5個主題:把Java寫的 Service加入到Applciation Framework中 1. IInterface與CTS 2. Binder 3. AIDL 4. Java Service與Manager 5. SystemServer、ServiceManager 第6個主題:Android架構移植移植時的事件驅動機制 1. Android Service是如何應對硬體阻塞的? 2. 開闢新的子線程並不斷的poll 3. Listener註冊 4. Callback 5. Application Framework中的Handler、Message、Looper、MessageQueue、 6. 事件驅動機制執行個體 第7個主題:Manager、Service和完整的資料流 1,Manager和Service分離的原則 2,ANR問題 3,阻塞式的操作和非阻塞式操作 4,以執行個體說明Android中的從最底層到最上層的資料流 第8個主題:ActivityManagerService之AMS總體剖析 1.ActivityManagerService的main函數剖析 2,AMS的 setSystemProcess剖析 3.AMS的 installSystemProviders函數剖析 4.AMS的 systemReady剖析 第9個主題:ActivityManagerService之startActivity剖析 1.ActivityManager 2.AMS的startActivityAndWait函數剖析 3.startActivityLocked剖析 第10個主題:ActivityManagerService之Broadcast和BroadcastReceiver剖析 1.registerReceiver流程剖析 2.sendBroadcast流程剖析 3.BROADCAST_INTENT_MSG訊息處理函數 4.應用進程處理廣播剖析 第11個主題:ActivityManagerService之startService剖析 1.startService代碼剖析 2.startService流程圖 |