2011年3月19日 星期六

[ Android ] 開機畫面 (3)

之前有說過,Android 內建的 bootanimation 這隻程式可用兩種方式來呈現開機動畫。

其中一種方式是以兩張圖片來呈現掃光的效果。
你可以在 frameworks/base/core/res/assets/images 這個目錄下,找到 android-logo-mask.png 和 android-logo-shine.png 這兩個檔案。




上圖 android-logo-mask.png 有著 android 鏤空字樣,就是透明、transparent。
下圖 android-logo-shine.png 就是一張有著不同顏色的圖。

若要自己設計這兩張圖,圖檔格式必須為 PNG,而且圖的寬高建議為2的冪次方
pixels。
為什麼會建議為2的冪次方?因為在某些機器上 OpenGL ES 會有無法顯示非2冪次方大小的圖的問題。

這個功能,我們可以在 frameworks/base/cmds/bootanimation/BootAnimation.cpp 中的 BootAnimation::android() 看到。

可以看到,這個 function 會將兩張圖置中並重疊在一起,然後慢慢移動底圖,也就是 android-logo-shine.png 這張圖,最後我們看到的效果就是 android 這幾個閃閃發光的字。

改完後,記得重新編譯 framework,"mm framework"。
然後把編出來的 framework-res.apk,替換掉原本在手機內的 /system/framework/framework-res.apk,就大功告成了。

1 則留言:

  1. 請問如何重新編譯framework,"mm framework"這句看不懂,謝謝您

    回覆刪除