iMX6 Android系統下常見問題解決思路

原創 2020-12-31 10:39:00 imx6

本文以飛凌嵌入式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四核處理器設計,核心板小尺寸核心板搭配獨特的薄款連接器,讓設計隨心所欲!

    了解詳情
    FETMX6Q-C核心板
  • OKMX6Q-C開發板

    雙千兆飛凌嵌入式iMX6Q開發板,板對板連接器,纖薄之際,次底板支持iMX6Q和iMX6DL核心板。i.MX6Q開發板與i.MX6DL開發板資源豐富,原理圖、PCB、軟件資源、硬件資源下載,技術支持等。歡迎選購

    了解詳情
    OKMX6Q-C開發板
  • 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系列產品現已暢銷全國,歡迎咨詢!
    了解詳情
    FETMX6Q-S核心板
  • OKMX6Q-S3開發板

    飛凌嵌入式提供iMX6Q開發板,iMX6解決方案,iMX6Q核心板,i.MX6Q開發板解決方案。iMX6Q穩定、快速、性價比高,歡迎選購 NXP iMX6系列芯片全支持,升級簡配無憂替換。 了解詳情
    OKMX6Q-S3開發板

推薦閱讀 換一批 換一批