1、製作幀動畫
這裡隨便從網上找了一個gif圖片,匯入PS中,開啟後會形成很多幀圖層,選擇導航欄中的檔案
->指令碼
->將圖層匯出到檔案
可以將所有圖層匯出來。要注意檔案命名,Android會按名稱排序來播放,順序錯亂,播出來的效果不好。
2、生成bootanimation.zip
2.1 所有圖片放入資料夾part1
2.2 編輯描述檔案desc.txt
316 234 10
p 0 0 part1
- 316 234 表示圖片尺寸,10表示每秒鐘播放10張圖片;
- p代表一個階段,可以有很多階段,每個階段可以播放不同資料夾裡的圖片,這裡只定義了一個階段;
- 第一個0表示重複次數,0表示無限重複;
- 第二個0表示重複的間隔;
- part1表示播放part1資料夾裡的圖片;
最後加個換行,儲存為ANSI格式。
2.3 壓縮為bootanimation.zip
將part1和desc.txt壓縮為bootanimation.zip
3、將bootanimation.zip放入/system/media目錄
adb root
adb remount
adb push bootanimation.zip /system/media
adb reboot
上面是沒有原始碼的情況下修改開機動畫。在AOSP環境中,也可以修改對應產品的.mk檔案,如我的裝置是Nexus5x,修改的是device/lge/bullhead/aosp_bullhead.mk
,追加以下內容,這樣系統打包出來開機動畫就被替換了。
PRODUCT_COPY_FILES += device/lge/bullhead/bootanimation.zip:system/media/bootanimation.zip
另外,Android原生開機動畫是用兩張圖片移動來實現的,位於frameworks/base/core/res/assets/images
目錄。