mtkandroid源碼
A. 手機方案公司需要在mtk工程源碼編譯後將apk預裝到system/app目錄下如何操作
在 Android 中,如果要使用系統限制的許可權(比如 android.permission.WRITE_SECURE_SETTINGS),我們需要把程序安裝到 /system/app/ 下。
下面以 SecureSetting.apk 為例,演示這個操作。需要准備一台已經獲得 Root 許可權的手機。
1、通過 USB 連接手機和電腦。
2、使用 adb 控制手機。
源碼列印?
1. $ adb push SecureSetting.apk /sdcard/ // 上傳要安裝的文件,為安裝做准備。
2. $ adb shell
3. $ su // 切換到 root 用戶。如果沒有獲得 Root 許可權,這一步不會成功。
4. # mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system // 讓分區可寫。
5. # cat /sdcard/SecureSetting.apk > /system/app/SecureSetting.apk // 這一步可以用 cp 實現,但一般設備中沒有包含該命令。如果使用 mv 會出現錯誤:failed on '/sdcard/NetWork.apk' - Cross-device link。
6. # mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system // 還原分區屬性,只讀。
7. # exit
8. $ exit
$ adb push SecureSetting.apk /sdcard/ // 上傳要安裝的文件,為安裝做准備。
$ adb shell
$ su // 切換到 root 用戶。如果沒有獲得 Root 許可權,這一步不會成功。
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system // 讓分區可寫。
# cat /sdcard/SecureSetting.apk > /system/app/SecureSetting.apk // 這一步可以用 cp 實現,但一般設備中沒有包含該命令。如果使用 mv 會出現錯誤:failed on '/sdcard/NetWork.apk' - Cross-device link。
# mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system // 還原分區屬性,只讀。
# exit
$ exit
B. android如何把apk的工程代碼放到源碼目錄下編譯
啥平台的,是原生的還是高通的還是mtk的?反正都類似,你需要一個Android.mk然後源碼需要整體new過。然後編譯的時候編譯到Android.mk所在目錄就可以了。反正我現在接觸mtk平台的,new代碼方法如下:1、首先到XXXXXX/L23_XXXXXXX_AN5.1_MT6735_65C_L1.MP3.V1.8.9_150503/android_mtk_6753_mp目錄下,使用如下命令./TmakeGionee
BFL7506A
-p
packages/apps/XXXXX(XXXXXX就是你apk代碼所存放的並且與Android.mk同級的目錄)。
C. MTK Android tinycap錄制音頻
tinycap和tinymix 是tinyalsa下的可執行程序,源碼在external\tinyalsa下
我們只需要在device.mk 內添加
編譯即可
1.在開機後,有root許可權的情況,執行扮彎tinymix,得到控制項狀薯侍態。
2.開啟錄音機。執行tinymix,得到錄音狀態下控制項情況
比較不同處
經過分析,主要是ctl id 14 15 16 17 20 21需要在錄音時候打開。
1.執行如廳手悶下命令
tinymix 14 1
tinymix 15 3
tinymix 16 1
tinymix 17 1
tinymix 20 4
tinymix 21 4
2.tinycap錄音
tinycap /sdcard/aud-test.wav -D 0 -d 1 -c 2 -b 16 -r 16000
OK~
D. 如何在ubuntu10.04環境下編譯android
安裝JDK1.6,使用如下命令
sudo chmod u+x jdk-6u23-linux-x64.bin
sudo cp -a jdk-6u23-linux-x64.bin /opt
sudo /opt/jdk-6u23-linux-x64.bin
sudo rm -f /opt/jdk-6u23-linux-x64.bin
2
設置JDK環境變數,在HOME根目錄下按鍵盤Crtr+H顯示HOME目錄下所有文件,打開.bashrc,在最後加入以下代碼
#set java environment
export JAVA_HOME=/opt/jdk1.6.0_23
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
3
測試JDK是否安裝成功,使用命令java -version 如果顯示
java version "1.6.0_23"
Java(TM) SE Runtime Environment (build 1.6.0_23-b02)
Java HotSpot(TM) Server VM (build 16.3-b01, mixed mode)
則JDK安裝成功。
END
測試MTK android編譯環境是否搭建成功
切換到MTK源碼根目錄下,使用命令./mk check-env,若顯示如下信息則安裝成功
**********checking Env************
Your building environment is OK
The detail information is in "checkenv.log"!
*************************************************
同時在MTK源碼根目錄下生成checkenv.log文件,打開文件,顯示ubuntu10.04大部分自帶工具都和MTK的推薦的一致,如下:
Build Environment Requirement
===================================================
* ********* Suggested OS and Tool Chain to install *********
*
* OS : Linux distribution Ubuntu 10.04
* Memory Size : 4G or above
* make : GNU Make 3.81 or 3.82
* perl : Version 5.10.X
* python : Version 2.6.X
* arm-linux-androideabi-gcc : Version 4.6.X
* gcc : Version 4.4.3
* jdk : Version 1.6.X
* bison : Version 2.4.X
* flex : Version 2.5.X
* gperf : Version 3.0.X
* mingw : Installed
* unix2dos/tofrodos : Installed
* **********************************************************
===================================================
Build Environment Check Result Report
*************************************************************
[OS]: Ubuntu 10.04.4 (64-bit) [OK]
[Physical Memory Size] : 4052924 K-Bytes [WARNING]
it's smaller than recommendation, may cause out-of-memory build error
[make]: 3.81 (64-bit) [OK]
[perl]: 5.10.1 (64-bit) [OK]
[python]: 2.6.5 (64-bit) [OK]
[arm-linux-androideabi-gcc]: 4.6. (64-bit) [OK]
[gcc]: 4.4.3 (64-bit) [OK]
[jdk]: 1.6.0_45 (64-bit) [OK]
[bison]: 2.4.1 (64-bit) [OK]
[flex]: 2.5.35 (64-bit) [OK]
[gperf]: 3.0.3 (64-bit) [OK]
[mingw]: Installed [OK]
[unix2dos/tofrodos]: Installed [OK]
*************************************************************
步驟閱讀
3
也可以解決下這個問題
[Physical Memory Size] : 4052924 K-Bytes [WARNING]
it's smaller than recommendation, may cause out-of-memory build error
打開mediatek/build/tools/checkEnv.py
修改lowMen為0
E. ubuntu12.04編譯android源碼要多久
這個關鍵是要看你的電腦配置情況,以及代碼的附加情況,有的平台軟體會附加很多東西上去,編譯就比較慢了。
我們這邊使用的是四核八線程的電腦,32GB內存,
原生代碼 4.4 八線程編譯40分鍾左右,5.1,一個半小時左右,6.0的大約一個小時,以上是原生代碼編譯模擬器的時間。
高通代碼6.0編譯一般需要兩個小時左右,mtk的也是兩個小時左右,
F. 如何學習MTK 編譯android系統的framework層源碼,需要看一些什麼文檔,最近在公司需要學習、
mtk有個叫makeMtk的腳本文件,直接執行就行,後面參數加上自己要編譯的模塊,比如./makeMtk -t mm frameworks/base/core/res