編輯:Android開發教程
因為我沒有真機的環境 所以需要在模擬器中進行模擬進行,所以要下載支持模擬器的源代碼版本,而goldfish這個源代碼版本就是專門為模擬器環境而提供的。
The goldfish project contains the kernel sources for the emulated platforms.
一、首先,到
git clone https://android.googlesource.com/kernel/goldfish.git下載Linux Kernel for Android emulator源代碼。
1、使用GIT工具下載,執行以下命令:
USER-NAME@MACHINE-NAME:~/$ git clone https://android.googlesource.com/kernel/goldfish.git
同樣是經過漫長的等待後,在home目錄下有一個goldfish目錄,Linux內核代碼就在這裡了。
2、下載完成後,可以查看下載的內核代碼版本:
USER-NAME@MACHINE-NAME:~$ cd goldfish
USER-NAME@MACHINE-NAME:~/goldfish$ ls -a
. .. .git
3、 .git include 內核源代碼,現在我們需要適用於模擬器用的內核,因此,我們需要checkout goldfish版本:
USER-NAME@MACHINE-NAME:~/goldfish$ git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/android-goldfish-2.6.29
remotes/origin/android-goldfish-3.4
remotes/origin/linux-goldfish-3.0-wip
remotes/origin/master
選擇remotes/origin/android-goldfish-3.4:
USER-NAME@MACHINE-NAME:~/my_android/kernel/goldfish$ git checkout remotes/origin/android-goldfish-3.4
二、編譯內核代碼。
1、導出交叉編譯工具目錄到$PATH環境變量中去:
USER-NAME@MACHINE-NAME:~/my_android/kernel/goldfish$
export ARCH=arm
export SUBARCH=arm
export PATH=$PATH:/home/v0idp0int/tools/android-ndk-r9c/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin
export CROSS_COMPILE=arm-linux-androideabi-
2、現在是要得到android的內核編譯參數的配置文件的時候了,該文件需要從已經安裝好的android的模擬器
中得到才行。所以安裝android的sdk也是必須的,
首先啟動android模擬器,然後通過adb得到模擬器中提供的內核配置文件:
USER-NAME@MACHINE-NAME:emulator &
USER-NAME@MACHINE-NAME:adb pull /proc/config.gz .
這時候adb工具會連接模擬器,並從它裡面下載一個叫做config.gz的文件到你的當前目錄下。
把它拷貝到你的kernel/goldfish目錄:
USER-NAME@MACHINE-NAME:cd ~/my_android/kernel/goldfish
USER-NAME@MACHINE-NAME:cp ~/config.gz
解壓縮該文件,並重命名為.config,這一步做了就可以跳過make menuconfig之類的內核參數設置
動作了。
USER-NAME@MACHINE-NAME:gunzip config.gz
USER-NAME@MACHINE-NAME:mv config .config
若是重新編譯一個模擬器的內核版本的話,使用命令make goldfish_defconfig 或者make goldfish_armv7_defconfig產生的.config來編譯內核。
本例演示了如何從Menu 資源(XML 定義)展開菜單項。這個例子的onCreate 采用了使用代碼來創建Activity 界面的方法 而通常的方法是采用Layout資源
Intents 這個例子的代碼非常簡單:Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent
技術是永無止境的,如果真的愛技術,那就勇敢的堅持下去。我很喜歡這句話,當我在遇到問題的時候、當我覺得代碼枯燥的時候,我就會問自己,到底是不是真的熱愛技術,這個時候,我心裡
前言TextView的drawableLeft、drawableRight和drawableTop是一個常用、好用的屬性,可以在文本的上下左右放置一個圖片,而不使用更加復
Remote Service Controller 和使用Local S