1. 程式人生 > >Android8.1 Launcher3的簡單介紹

Android8.1 Launcher3的簡單介紹

一、Luncher3的路徑:7731e81\sc7731e.81.az\packages\apps\Launcher3
二、目錄介紹:
1、在 Launcher3 的子目錄主要包括 ext、go、res、src、tests、gradle 等,下面逐一介紹各個子目錄的主要功能。
(1)ext 目錄:該目錄主要是便於對 Launcher3 進行解耦和功能擴充套件。新擴充套件的資源和功能程式碼都放置在該目錄下。
(2) go 目錄:該目錄是 Launcher3 針對 Android 8.1 新增的 Go 版本而新新增的目錄,主要是放置 Go 版本相關功能的資源和程式碼。
(3) tests 目錄:該目錄是存放一些 Launcher 測試程式碼。
(4) gradle 目錄:這個目錄下包含了 Android studio 編譯用到的檔案,通常不用過多關心。目前 Launcher3可以使用 Android studio 編譯通過,可以直接使用 studio 進行開發。

2、 Launcher3 原生程式碼目錄 路徑:7731e81\sc7731e.81.az\packages\apps\Launcher3\src\com\android\launcher3
(1)allapps 目錄:該目錄主要是存放主選單介面相關的程式碼。
(2) anim 目錄:該目錄主要是存放動畫相關程式碼,主要是動畫基類程式碼。
(3) badge 目錄:該目錄主要是存放圖示標識相關的程式碼,例如通知小圓點等。
(4) compat 目錄:該目錄主要是存放解決相容性相關的程式碼。
(5) config 目錄:該目錄是配置 Launcher 相關功能的巨集開關,目前 Launcher 原生新增的功能巨集開關都在這個目錄。
(6) dragndrop 目錄:該目錄是存放拖拽相關操作的程式碼。
(7) dynamicui 目錄:該目錄是存放新增功能桌面主題效果跟隨桌布顏色自適應相關的程式碼。
(8) graphics 目錄:該目錄是存放處理圖示大小、顏色、自適應等相關的程式碼。
(9) model 目錄:該目錄是存放 Launcher 載入流程相關模組化的程式碼。
(10) notification 目錄:該目錄是存放通知相關的程式碼。
Spreadtrum Confidential For hexing
Spreadtrum Confidential For hexing
Spreadtrum Confidential For hexing
Spreadtrum Confidential For hexing
(11) pageindicators 目錄:該目錄是存放桌面頁面指示器相關的程式碼。
(12) popup 目錄:該目錄是存放長按圖示顯示彈出框相關的程式碼。
(13)provider 目錄:該目錄是存放 Launcher 資料庫相關的程式碼。
(14) qsb 目錄:該目錄是存放搜尋功能相關的程式碼。
(15) shortcuts 目錄:該目錄是存放桌面所屬應用某些功能的快捷圖示相關的程式碼。

3、Go 目錄
(1)FeatureFlags.java 檔案:該檔案是原生配置不適合在 Go 版本上面開啟的功能巨集開關。
(2) FeatureOption.java 檔案: 該檔案是配置 ext 目錄下新開發的不適合在 Go 版本開啟的功能巨集開關。

4、Ext 目錄
(1)UtilitiesExt.java 檔案:該檔案是擴充套件的一些常用方法工具類。
(2) SystemPropertiesUtils.java 檔案: 封裝後的 Properties 工具類,如果使用 PROPERTY 屬性,請使用此
工具類。
(3)LogUtils.java 檔案: 該檔案是新增的 Log 列印工具類,新加 Log 請使用此工具類。
(4) LauncherSettingsExtension.java、LauncherAppMonitonCallback.java、LauncherAppMonitonr.java 檔案:
這三個檔案是為了與原生程式碼解耦而新增的框架類,建議開發新功能的時候,可以參考其他新增功
能的程式碼。
(5) BaseFeatures.java 檔案:該檔案是新開發功能的巨集開關控制類,建議新開發的功能,把對應巨集開關
加入此檔案,可以參考其他新增加功能程式碼。