android L版本AAL新架構

來源:互聯網
上載者:User

標籤:

[DESCRIPTION]和之前KK版本相比,在L版本上面AAL的架構也有發生一些改變。拿掉了之前KK平台上使用的MTK LABC,使用Android原生的自動背光功能。AALService內部只保留CABC和DRE兩個功能。  [SOLUTION]L版本AAL架構如所示,可以參考架構圖閱讀代碼。 有幾個比較重要的地方需要注意。(1)由於自動背光功能是使用的Android原生的LABC功能,所以LABC相關的客制化部分都是按照Android原生的走。第一是,config.xml檔案的客制化。MTK預設Release出去的codebase裡面的config.xml中有default的table值。如所示,客戶可以根據需求進行Turing和修改,一般情況下都不會去動它。路徑是alps/frameworks/base/core/res/res/values/config.xml 第二是,LABC從亮到暗的速度,LABC從暗到亮的速度的調整,修改兩個變數就可以了,如所示: (2)說完LABC,再來看看AALService中的CABC和DRE功能。和KK相比客制化部分仍然在cust_aal.cpp中,只是檔案的路徑發生了改變,檔案中的一些變數發生了改變。路徑在alps/vendor/mediatek/proprietary/custom/$Project/hal/aal/cust_aal.cpp由於把MTK LABC給Phased out掉了,所以與MTK LABC相關的變數也Phased out了。DRE功能增加了一個變數,LowBLReadabilityLevel。CABC功能相應的客制化變數沒有發生改變。這裡其實用MTK的default value就好了。增加了一個變數,InitFunction,這個變數是說AAL啟動預設開啟哪些功能,如果InitFunction=6,CABC和DRE都開啟。如果InitFunction=2,只有CABC有開啟。如果InitFunction=4,只有DRE有開啟。如果InitFunction=0,CABC和DRE都不開啟。  (3)還有一個地方需要注意的是,Lightsensor的驅動代碼。由於DRE功能需要從LightSensor驅動中去擷取環境光線的一些資料。所以需要在Lightsensor的驅動中實現一個Ioctl的介面。舉例如下所示,比如stk3x1x的lightsensor,要確保在其stk3x1x_unlocked_ioctl函數中可以通過ALSPS_GET_ALS_DATA命令,擷取相應的als值。   

android L版本AAL新架構

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.