編輯:關於Android編程
本方案以 RHEL / Centos 64位Linux操作系統為例,因為這是目前最常見的服務器環境。
一、安裝Java SDK。
建議,不要使用諸如yum之類的玩意自動安裝,因為openJDK之類的東東最終各種幺蛾子跑不起來。老老實的去oracle網站下載至少Java7 64位的最終版本,手動安裝之,配置好系統path和JAVA_HOME環境變量。
vim ~/.bash_profile
export JAVA_HOME=
PATH=$PATH:$JAVA_HOME/bin
……
二、安裝Android SDK管理工具。
思路就是去Google網站上把Linux版本的Android SDK管理工具壓縮包搞下來,如果訪問不了Google(中國特色你懂的)就上網找IP地址配host之類的方法搞定。
wget https://dl.google.com/android/android-sdk_r23.0.2-linux.tgz
然後就是解壓縮配置環境變量啦,最終確保”android”命令在系統中可用就是目的。
編輯 ~/.bash_profile 加入系統路徑2枚:
PATH=$PATH:$your_android-sdk-linux/tools
PATH=$PATH:$your_android-sdk-linux/platform-tools
export PATH
64位系統請設置這個環境變量:
export ANDROID_SWT=$your_android-sdk-linux/tools/lib/x86_64
# 如果是32位系統則這樣設置:
# export ANDROID_SWT=$your_android-sdk-linux/tools/lib/x86
完事後檢測一下是否OK,運行命令:
android -h
三、安裝Ant為了執行自動編譯腳本。
建議老老實實去下載 Apache Ant,注意:android-sdk_r23.0.2 必須要 Ant 1.8 版本以上才行,解壓之,並將其bin目錄配置到系統執行路徑中。過程不再廢話~
期間可能會遇到問題:
java.lang.ClassNotFoundException: org.apache.tools.ant.util.regexp.Jdk14RegexpRegexp
這樣解決:
sudo yum install ant-apache-regexp
或(Ubuntu系統)
sudo apt-get install ant-optional
四、下載Android SDK。
思路是先查看有哪些版本的SDK,它們的編號如何,然後選擇自己需要的下載之;如果全下載的話就太多了,在中國,慢。搞定這些事你會用到如下命令:
# 查看遠程所有的SDK
android list sdk --all
# 查看本地已安裝的SDK
android list target
# 僅僅下載編號為27的SDK,--no-ui 不需要啟動圖形界面
android update sdk --no-ui --all --filter 27
# 下載 platform-tools和android-19
android update sdk --no-ui -u --all --filter platform-tools,android-19
# 下載所有的SDK(不建議這樣做)
android update sdk --no-ui
五、開始嘗試構建工程
Android工程一般沒有Ant構建文件build.xml,因此需要在項目根目錄運行如下命令測試一下能否生成:
android update project -p .
可能你會遇到如下問題:
Execute failed: java.io.IOException: Cannot run program /android/sdk/build-tools/android-4.1/aapt: error=2
解決辦法:
yum install -y compat-libstdc++-296.i686
yum install -y compat-libstdc++-33.i686
/android/sdk/build-tools/android-4.1/aapt: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory
解決辦法:
yum install -y zlib
/android/sdk/build-tools/android-4.1/aapt: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
解決辦法:
yum install -y libstdc++.so.6
error while loading shared libraries: libz.so.1: cannot open shared obj
解決辦法:
yum install -y zlib.i686
六、設置Jenkins和設置相關環境。
分析代碼質量你需要Findbugs。
所以建議你下載 Findbugs 2.0.3,然後解壓縮到某個目錄就算安裝了。再復制 findbugs-ant.jar 到 ANT_HOME/lib 目錄。
在“android-sdk/tools/ant”這個目錄裡創建 findbugs-exclude.xml 這個文件,只是findbugs不要掃描非Java代碼,內容如下:
然後編輯“android-sdk/tools/ant/build.xml”,增加 findbugs 的構建任務:
output=xml outputFile=reports/findbugs.xml excludeFilter=findbugs-exclude.xml>
官方的標准做法是這樣建議的,我覺得太麻煩,供參考吧:
最後,開始愉快的操作Jenkins:
首先在Jenkins系統環境變量控制台裡配置 findbugs.home 和 android-sdk.home ,你懂得。
然後“構建一個自由風格的軟件項目”在Jenkins裡。
在項目裡按如下順序添加“構建步驟”:
Execute shell
Command
android update project -p . --target android-19
Invoke Ant
Targets
clean
debug
findbugs
lint
看到了吧,findbugs命令就是我們剛才配置的Ant構建任務。
lint命令需要Jenkins安裝響應的插件,這裡不再贅述。
前面幾節中,都是通過java層調用到jni中,jni向下到c++層並未介紹看下Java層一個方法在c++層 MediaPlayer後續過程frameworks/av/me
一、建立測試環境 安裝了Android Developer Tools (ADT) 插件的Eclipse將為你創建,構建,以及運行Android程序提供一個基於圖形界面的
四、Activity 4.1 Activity Activity是應用程序的入口。負責創建才窗口(setContextView(View)),和用戶交互等。 4.1.
關於Handler的總結。 Message:消息,其中包含了消息ID,消息處理對象以及處理的數據等,由MessageQueue統一列隊,終由Handler處理。 H