Android Framework 開發揭秘,Framework到底從何學起?

android攻城獅獅獅 發佈 2022-07-28T21:19:58.982523+00:00

從從事Android工作的第一天起,你一定聽過無數次關於Framework的討論,也曾在這個版塊被面試官吊錘過N多次。

從從事Android工作的第一天起,你一定聽過無數次關於Framework的討論,也曾在這個版塊被面試官吊錘過N多次。

掉幀監控,函數插樁,慢函數檢測,ANR 監控,啟動監控,都需要對 Framework 有比較深入的了解,才能知道怎麼去監控,利用什麼機制監控,函數插樁插到哪裡,反射調用該反射哪個類哪個方法哪個屬性……

Framework 作為 Android 框架層,為眾多App提供了N多的API來調用,但很多機制都是Framework包裝好直接給 App 來用的,不知道這些機制原理,就無從下手在這基礎上進行優化。

相信所有人開始學習android開發的時候都是從以下這張圖開始的,framework位於hal、系統庫之上,位於app之下。

Framework 即應用框架層,是 Android 架構的關鍵組成部分,為我們開發應用程式提供了非常多的API,使得開發者通過簡單調用API即可開始APP的開發,而不用詳細了解 Android 系統紛繁複雜的底層知識。

為幫助大家了解 Framework 在整個 Android 架構中的功能與構造,系統的學習和掌握Android framework,這裡分享給大家一份《Android Framework開發文檔》,帶你深入探究framework,把Framework扒個精光。

那麼應該如何學習Framework?

關於如何學習Android Framework開發知識,可以參考這份由騰訊大佬總結的《Android Framework 進階學習指南》,今天在這裡分享給大家:

需要的朋友們可以三連支持一下!私信留言 Framework 即可獲取此份資料

1.Framework通信

進程間通信(Binder IPC機制)

  • Linux內存binder基礎
  • Binder IPC通信原理
  • 深入Binder驅動
  • Binder面試總結(阿里篇)

進程內通信(Handler消息機制)

  • Loop消息泵機制
  • Message解析
  • Handler面試分享(鵝廠)

實戰企業架構通信

  • LiveData事件機制

2.Framework底層服務

AMS原理

  • SystemServer加載AMS
  • AMS數據結構
  • AMS數據結構
  • Activtiy棧管理
  • 手機開機啟動的AMS流程
  • App啟動中的AMS流程
  • Activtiy管理
  • AMS面試集合
  • AMS原理實戰

PMS原理

  • Packagelnstaller安裝器流程分析
  • PMS源碼解讀
  • T10級面試PMS總結

WMS機制

  • WMS內核
  • Window的創建過程
  • 企業級Toast與Window架構體系
  • T10級崗位WMS面試總結

3.Framework系統資源

ServiceManager原理

  • init.rc文件啟動關鍵服務
  • service_ manager進程入口
  • ServiceManager消息輪訓
  • ServiceManager服務存儲之svclist鍊表
  • ServiceManager面試總結

深入Contxt上下文

  • Context與ApplicationContext
  • Context族譜分析
  • Contextmp與ActivityThread
  • getActivity()與getContext ()內存區別
  • 帶你認識不一樣的上下文Context

深入Resource資源加載

  • resources.arsc文件
  • ResourcesManager創建Resource
  • LoadedApk與Resource關係

4.Framework事件機制

事件分發機制

  • Android事件處理的三個流程
  • 事件信號從內核到IMS過程
  • IMS如何推送數據給ViewRootimp轉入上層
  • Android處理Down事件的責任鏈模式
  • Android處理Move事件
  • 手寫模擬Android事件分發架構

事件衝突解決萬能公式

  • 產生衝突事件分類
  • 產生衝突事件分類
  • 事件衝突優先級
  • 事件衝突模擬實戰

5.Framework UI機制

UI繪製原理

  • setContentView加載數據的核心概念
  • ViewRootlmpl的繪製管理
  • Choreographer編舞者
  • 測量機制(onMeasure)
  • 擺放機制(onLayout)
  • T10級面試UI繪製總結

UI自定義實戰

  • RecycleView
  • Webview
  • ViewPager

最後

Framework學習內容大致就介紹到這裡,相信這份資料一定可以為大家在FrameWork的學習上提供強有力的幫助,讓你快人一步成為真正的高級Android開發者,由於文章內容比較多,篇幅有限,資料已經被整理成了PDF文檔,有需要《Android Framework進階學習指南》完整文檔的可以私信留言 Framework 即可獲取。

關鍵字: