iMX6 Android系統下常見問題解決思路
本文以飛凌嵌入式OKMX6Q/DL平臺為基礎講解,其它iMX6 平臺可參考使用,通過本文您可以了解iMX6 Android系統下一些問題的處理思路,希望可以協助客戶加速產品的研發速度。
第一章 Android4.4屏幕豎屏
修改Android源碼(Android源碼需要整體編譯一遍以后才可以)
vim out/target/product/okmx6qd_c/root/init.rc
添加紅框部分,重新編譯燒寫即可
注:1.編譯的時候不要make clean;
2.若沒有這個路徑需要先編譯再修改然后再增量編譯。
第二章 開機屏幕不鎖定
有部分客戶想要系統啟動后屏幕默認不鎖定,可以參考以下方法修改后重新編譯鏡像后,將新編譯的鏡像燒寫到imx6開發板上:
修改/frameworks/base/packages/SettingsProvider/res/values/defaults.xml文件
注:紅色字體為改動部分
<string name="def_unlock_sound" translatable="false">/system/media/audio/ui/Unlock.ogg</string>
<string name="def_wireless_charging_started_sound" translatable="false">/system/media/audio/ui/WirelessChargingStarted.ogg</string>
去掉<bool name="def_lockscreen_disabled">false</bool>
添加<bool name="def_lockscreen_disabled">true</bool>
<bool name="def_device_provisioned">false</bool>
<integer name="def_dock_audio_media_enabled">1</integer>
第三章 獲得root權限
如果想要在android下獲取root權限,可以參考以下方法:
1.用附件su文件替換out/target/product/okmx6qd_c/system/xbin/下的su文件,再將system/extras/su/Android.mk文件改為system/extras/su/Android.txt
2.在init.rc增加root守護進程,該路徑為device/fsl/okmx6qd_c/init.rc,增加如下內容:
#add for root
on property:sys.boot_completed=1
su --daemon
#end
注意:
1、root權限是對所有apk都開放沒有限制的
2、編譯前不要make clean, su 文件在文件夾中
第四章 Andriod App獲得簽名
如果客戶自己在做好Android應用后,安裝不到iMX6開發板上,可以通過以下設置system權限的方法試一試。
可以看一下eclipse中調試信息如下:
Installation error: INSTALL_FAILED_SHARED_USER_INCOMPATIBLE
這是因為APP的源碼中的AndroidManifest.xml文件中設置了system權限,如下:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="forlinx.example.app"
android:versionName="1.0"
android:versionCode="1"
android:sharedUserId="android.uid.system" /*設置了system權限*/
(自己開發的APP也可以依此手法設置system權限)
設置了system權限后編譯出的APP需要進行系統的簽名才能正常的安裝運行。
方法一:
1、修改Android.mk文件,加入LOCAL_CERTIFICATE := platform這一行
2、使用make命令來編譯,生成的apk就可以在iMX6開發板中運行了
這種也是我們源碼中的APP采用的方法。
方法二:
這一種也完成了測試,測試使用的是CanTest的源碼。
1、使用eclipse編譯出對應apk文件ForlinxActivity.apk,但是這個apk文件是不能用的。
2、使用SignApk.jar簽名工具對該apk進行簽名
首先在Android源碼中拷貝出platform.pk8、platform.x509.pem 和Signapk三個文件,然后再把編譯出的apk文件拷貝到同一級目錄下。
打開Windows的cmd.exe,然后切換到apk所在的目錄,輸入以下命令:
signapk.jar platform.x509.pem platform.pk8 ForlinxActivity.apk new.apk
執行后new.apk即為簽名后的文件,這個new.apk就可以安裝到開發板上了。
適用范圍
本文主要適用于飛凌OKMX6DL/Q平臺Android4.4操作系統,其他平臺也可以參考,但是不同平臺之間會存在差異,需客戶自行修改以適應自己的使用,由于水平有限僅供參考使用。
相關產品 >
-
FETMX6Q-C核心板
i.MX6Q核心板板層出不窮,要如何選擇?飛凌解讀i.mx6Q芯片強性能為您推薦四核A9架構的i.MX6Q產品精選,包含iMX6Q 核心板、i.MX6Q 核心板、iMX6Q工業級核心板,歡迎采購。 i.MX6Q核心板基于NXP(原Freescale)Cortex-A9架構的i.MX6Q四核處理器設計,核心板小尺寸核心板搭配獨特的薄款連接器,讓設計隨心所欲!
了解詳情 -
OKMX6Q-C開發板
雙千兆飛凌嵌入式iMX6Q開發板,板對板連接器,纖薄之際,次底板支持iMX6Q和iMX6DL核心板。i.MX6Q開發板與i.MX6DL開發板資源豐富,原理圖、PCB、軟件資源、硬件資源下載,技術支持等。歡迎選購
了解詳情 -
FETMX6Q-S核心板
NXP iMX6Quad系列具有四個內核,運行頻率達1.2 GHz,帶有1 MB L2緩存和64位DDR3或2通道、32位LPDDR2支持。飛凌提供商業級iMX6Q核心板,工業級iMX6Q核心板,兼容一同底板。具有抗震,抗氧化,抗干擾,更快速升級產品等優勢。保定飛凌嵌入式專注imx6,imx6開發板,飛思卡爾imx6等ARM嵌入式核心控制系統研發、設計和生產,是imx6,imx6開發板,飛思卡爾imx6提供者,imx6系列產品現已暢銷全國,歡迎咨詢!
了解詳情 -
OKMX6Q-S3開發板
飛凌嵌入式提供iMX6Q開發板,iMX6解決方案,iMX6Q核心板,i.MX6Q開發板解決方案。iMX6Q穩定、快速、性價比高,歡迎選購 NXP iMX6系列芯片全支持,升級簡配無憂替換。 了解詳情