1. 程式人生 > >Android 系統(52)---O1關機鬧鐘

Android 系統(52)---O1關機鬧鐘

MTK android O1 關機鬧鐘 在android O1上mtk修改了關機鬧鐘的實現,此feature與原有的feature有很大的區別。1.檔案變化(1) android O上關機鬧鐘在framework這邊的實現,是在加了一支檔案MtkAlarmManagerService.java. MtkAlarmManagerService繼承於原生的AlarmManagerService。此檔案的路徑:/vendor/mediatek/proprietary/frameworks/base/services/core/java/com/mediatek/server/MtkAlarmManagerService.java(2) mtk DeskClock程式碼位於/vendor/mediatek/proprietary/packages/apps/DeskClock/,其模組名叫做MtkDeskClock。2.行為改變
O之前的關機鬧鐘:    設定的時間到—>Alarm Boot—>關機鬧鐘響起,出現關機鬧鐘介面O的關機鬧鐘:       提前150s Normal Boot—>正常開機完成—>Alarm時間到—>鬧鐘響起(出現鬧鐘介面)3.如果發現關機鬧鐘無效,可以從如下方面檢查 (1) 當前codebase是否有升級到最新 (2) 使用的DeskClock是否為MtkDeskClock (3) 設定的Alarm的時間是否距離現在的時間大於150s(小於150s將不會響起) (4) 開機的時間是否小於150s(大於150s將 不會響起)PS: Android O0上關機鬧鐘依然維持和以前版本一致。4. 關機鬧鐘與安全鎖屏的關係
如果設定鎖屏安全模式的時候,會有一個選擇Secure start-up的步驟。
如果選擇No,那麼還是可以正常支援關機鬧鐘。如果選擇了Yes,那麼就不支援關機鬧鐘,到了時間點也不會起鬧鐘。主要程式碼在PowerOffAlarm.canEnablePowerOffAlarm接口裡面。如果不設定secure start-up,那麼getPassWordTYPE的值就為CRYPT_TYPE_DEFAULT,所以也可以使用關機鬧鐘,反之,就不支援關機鬧鐘了