欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: iTOP-4418開(kāi)發(fā)板Android5.1文件系統(tǒng)源碼修改 [打印本頁(yè)]

作者: 張宇yli    時(shí)間: 2019-12-25 15:07
標(biāo)題: iTOP-4418開(kāi)發(fā)板Android5.1文件系統(tǒng)源碼修改

基于:迅為iTOP-4418開(kāi)發(fā)板

10.9.2.1 將 APK 編譯到 Android5.1 鏡像中

本節(jié)介紹的是如何默認(rèn)安裝 apk 至系統(tǒng),當(dāng)然用戶也可以使用”adb install *.apk”命令將 apk 下載到開(kāi)發(fā)板。但當(dāng)開(kāi)發(fā)板數(shù)量較多的時(shí)候,那么每次使用 adb 命令就過(guò)于繁瑣了,因此將必要的 apk 編譯至 Android 鏡像中會(huì)大大提升工作效率。

如下圖所示,在 Android5.1 源碼目錄“device/nexell/s5p6818_drone/apk”中,有一些默認(rèn)的應(yīng)用程序。


如果想再添加應(yīng)用程序,那么以 ledtest 為例,你只需要在 apk 文件下建立文件夾 ledtest。


然后將 ledtest.apk 和 libled.so 放進(jìn)文件夾 ledtest 中。 進(jìn)入到 ledtest 文件夾可以看到ledtest 的 APK 和對(duì)應(yīng)的庫(kù)文件。


如下圖所示,安裝 APK 的腳本是“device/nexell/s5p6818_drone/device.mk”

首先進(jìn)入對(duì)應(yīng)文件夾,然后打開(kāi) device.mk。


如下圖所示,這兩行腳本是與 ledtest 相關(guān)的。首先將 ledtest.apk 放到對(duì)應(yīng)的文件夾

中。其次,ledtest 需要一個(gè)庫(kù)文件,這個(gè)庫(kù)文件也要放到對(duì)應(yīng)的文件夾中。(這幾段代碼是 要自己添加的)如果是其它的 APK,可以參考 ledtest 的腳本。


修改完后,保存退出。 接著進(jìn)入源碼目錄進(jìn)行編譯。


源碼編譯完成之后,將 Android5.1 鏡像(包括 boot.img 內(nèi)核鏡像)燒寫(xiě)至開(kāi)發(fā)板就

可 以看見(jiàn) ledtest 應(yīng)用程序。 然后打開(kāi) ledtest 應(yīng)用程序,點(diǎn)擊 LED1 ON 按鈕可以點(diǎn)亮

板子上的 led,點(diǎn)擊 LED1 OFF 按鈕可以熄滅板子上的 led 小燈。

如果小燈沒(méi)有反應(yīng),則需要到給予 led 的設(shè)備節(jié)點(diǎn)權(quán)限,在串口控制臺(tái)輸入“chmod 777

/dev/leds_ctl”,如下圖所示。


使用命令”ls -l /dev | grep led”看到命令執(zhí)行成功。


接下來(lái)使用 app 便可以控制 led 的亮滅。

10.9.2.2 去掉默認(rèn)安裝的 APK

在 Android5.1 文件系統(tǒng)中,默認(rèn)安裝了一些應(yīng)用程序,如果有不需要的可以將其去掉。本

文以游戲 2048 為例。


安裝 APK 的腳本是“device/nexell/s5p6818_drone/device.mk”

首先進(jìn)入對(duì)應(yīng)文件夾,然后打開(kāi) device.mk,如下圖所示。


然后找到 2048 對(duì)應(yīng)的內(nèi)容,注釋掉,如下圖所示。


保存退出,接著進(jìn)入源碼目錄進(jìn)行編譯。


源碼編譯完成后,將 Android5.1 鏡像(包括 boot.img 內(nèi)核鏡像)燒寫(xiě)至開(kāi)發(fā)板就看不

到 2048 應(yīng)用程序。

10.9.2.3 Android5.1 設(shè)備權(quán)限的修改

在 Android5.1 下調(diào)用設(shè)備內(nèi)核驅(qū)動(dòng)的設(shè)備節(jié)點(diǎn)的時(shí)候,會(huì)遇到?jīng)]有權(quán)限的問(wèn)題,這個(gè)時(shí)

候需要修改一下設(shè)備的權(quán)限。下面以串口為例介紹一下,其它的設(shè)備修改方法也類(lèi)似。 在

Android5.1 下操作串口有時(shí)會(huì)遇到?jīng)]有權(quán)限的問(wèn)題,這就需要修改下 android5.1 的啟動(dòng)腳本,

在里面修改下串口的權(quán)限。

在 Android5.1 源碼目錄下輸入

“vim device/nexell/s5p6818_drone/init.s5p6818_drone.rc”

結(jié)果如下圖所示。


在里面添加修改權(quán)限的命令,如下圖所示。


上面的“chmod 0777 xxxx”就是修改設(shè)備節(jié)點(diǎn)的權(quán)限,如上圖所示,我們已修改了

ttySAC0、ttySAC1、ttySAC3 設(shè)備節(jié)點(diǎn)的權(quán)限。

按照此方法同樣可以修改其他設(shè)備節(jié)點(diǎn)的權(quán)限。

然后輸入“./build_android.sh”回車(chē)后開(kāi)始編譯 android,如下圖所示。


編譯完成后,把鏡像(包括 boot.img 內(nèi)核鏡像)燒寫(xiě)至開(kāi)發(fā)板,重新啟動(dòng) android。進(jìn)

入文件夾 dev,使用”ls -l”命令就可以看到串口的權(quán)限修改了(r-可讀,w-可寫(xiě),x-可執(zhí) 行)。


10.9.2.4 開(kāi)機(jī)橫豎屏切換

6818 底板帶有陀螺儀。屏幕會(huì)隨著板子的角度自動(dòng)進(jìn)行橫豎屏切換。如下圖。若想固定屏

幕方向,可按照如下方法設(shè)置。


10.9.2.4.1 去掉自動(dòng)旋轉(zhuǎn)功能(默認(rèn)橫屏)

如下圖,在 Android 源碼目錄下輸入命令“vi

frameworks/base/core/res/res/values/config.xml”


在里面使用”/config_supportAutoRotation “將參數(shù)修改為”false”,保存退出,如下

圖。


修改好后,運(yùn)行一鍵編譯腳本”./build_android.sh”,如下圖。


源碼編譯完成后,將 Android 鏡像燒寫(xiě)至開(kāi)發(fā)板,拔掉 otg 線,重新啟動(dòng)開(kāi)發(fā)板。

系統(tǒng)默認(rèn)是橫屏顯示,并沒(méi)有自動(dòng)旋轉(zhuǎn)功能。如下圖。


10.9.2.4.2 豎屏顯示

在上一小節(jié)的基礎(chǔ)上,進(jìn)行下面操作。

如下圖,在 Android 源碼目錄下輸入命令“vi frameworks/base/policy/src/com/an

droid/internal/policy/impl/PhoneWindowManager.java ”,如下圖。


在里面使用”/Surface.ROTATION”,在 5478 行,將參數(shù)修改為如下圖。


修改好后,運(yùn)行一鍵編譯腳本”./build_android.sh”,如下圖。


源碼編譯完成后,將 Android 鏡像燒寫(xiě)至開(kāi)發(fā)板,拔掉 otg 線,重新啟動(dòng)開(kāi)發(fā)板。

則該系統(tǒng)支持豎屏顯示,并不能自動(dòng)旋轉(zhuǎn)屏幕。如下圖。


注意,按照上面修改的話,uboot 和內(nèi)核的 logo 方向是不變的。默認(rèn)橫屏。







歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1