关于Android构建
“IDE都是給小白程序員的,大牛級(jí)別的程序員一定是命令行控,終端控,你看大牛都是使用vim,emacs 就一切搞定”
這話說(shuō)的雖然有些絕對(duì),但是也不無(wú)道理,做開(kāi)發(fā)這行要想效率高,自動(dòng)化還真是缺少不了命令行工具,因?yàn)橹挥忻钚胁攀亲罴训娜藱C(jī)交互工具。其實(shí) IDE也是底層也是調(diào)用命令行工具而已,只不過(guò)給普通開(kāi)發(fā)者呈現(xiàn)一個(gè)更友好的開(kāi)發(fā)界面。這里可不是宣揚(yáng)讓大家放棄IDE都改命令行,只是每種事物都有他存 在的理由,無(wú)論是編程語(yǔ)言還是工具都是一個(gè)原則 “沒(méi)有最好的,只有最合適的”。
發(fā)布產(chǎn)品的時(shí)候?yàn)榱私y(tǒng)計(jì)各渠道流量免不了要構(gòu)建不通的渠道包,你懂得國(guó)內(nèi)渠道上 百個(gè),靠IDE編譯打包非吐血不可。這些重復(fù)勞動(dòng)最適合交個(gè)程序來(lái)做,很多程序員想不明白這個(gè)問(wèn)題,寧愿把大量的精力時(shí)間花在業(yè)務(wù)上,卻不知道用工具提高工作效率。在這里寫(xiě)一篇簡(jiǎn)單的教程,告訴大家怎么脫離IDE環(huán)境完成一個(gè)android項(xiàng)目的編譯構(gòu)建,有了這基礎(chǔ)開(kāi)發(fā)什么自動(dòng)化構(gòu)建工具都不是什么難事了, 前一陣子做的一個(gè)打包html5應(yīng)用的在線工具AppBuilder就是基于命令行構(gòu)建完成的。
說(shuō)到命令行自然是不需要圖形界面,所以Android SDK的安裝下載自然都是在終端上進(jìn)行。下面是本文中使用的一些SDK和基本環(huán)境。
- ubuntu server 14.04 (64位)
- JDK 1.7
- android-sdk_r24.0
- gradle-2.2.1
進(jìn)入正題,接下來(lái)一步一步介紹如何安裝配置一個(gè)命令行下的編譯構(gòu)建系統(tǒng).
step 1 安裝 JDK 環(huán)境
配合android的JDK最好選用JDK官方版本而不是Open JDK,下面是在unbuntu下安裝JDK 1.7的方法。
| sudo?add-apt-repository ppa:webupd8team/java sudo?apt-get update sudo?apt-get install?oracle-java7-installer |
step 2 安裝 Android SDK
android sdk 工具包的一些命令行工具是基于32位系統(tǒng)的,在64為平臺(tái)運(yùn)行32程序必須安裝 i386 的一些依賴(lài)庫(kù),方法如下:
| sudo?dpkg --add-architecture i386 sudo?apt-get update sudo?apt-get install?libc6:i386 libncurses5:i386 libstdc++6:i386 lib32z1 |
安裝完成32位的依賴(lài)庫(kù)后,我們使用wget 去官方下載最新的linux下android SDK包。
| cd?~ wget http://dl.google.com/android/android-sdk_r24.0.1-linux.tgz tar?xvzf android-sdk_r24.0.1-linux.tgz |
編輯 .profile 或者 .bash_profile 把下面的目錄增加到 path的搜索路徑中,確保android SDK的的一些命令工具可以直接在終端使用,比如 adb 命令。
| ANDROID_HOME=$HOME/android-sdk-linux export?PATH="$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools" exprot ANDROID_HOME |
使環(huán)境變量生效
| source?~/.profile |
環(huán)境變量生效后,你可以使用android命令 列出sdk相關(guān)的列表,以便我們選擇和自己項(xiàng)目匹配的SDK版本。(剛才只是安裝了最基礎(chǔ)的SDK,要完全滿足你的開(kāi)發(fā)環(huán)境需要還得從下面的列表中選擇你需要的SDK和工具更新下載)
| android list sdk --all |
輸出如下所示:
| 1- Android SDK Tools, revision 24.0.1 ?2- Android SDK Platform-tools, revision 21 ?3- Android SDK Build-tools, revision 21.1.2 ?4- Android SDK Build-tools, revision 21.1.1 ?5- Android SDK Build-tools, revision 21.1 ?6- Android SDK Build-tools, revision 21.0.2 ?7- Android SDK Build-tools, revision 21.0.1 ?8- Android SDK Build-tools, revision 21 ?9- Android SDK Build-tools, revision 20 10- Android SDK Build-tools, revision 19.1 11- Android SDK Build-tools, revision 19.0.3 12- Android SDK Build-tools, revision 19.0.2 13- Android SDK Build-tools, revision 19.0.1 14- Android SDK Build-tools, revision 19 15- Android SDK Build-tools, revision 18.1.1 16- Android SDK Build-tools, revision 18.1 17- Android SDK Build-tools, revision 18.0.1 18- Android SDK Build-tools, revision 17 19- Documentation for?Android SDK, API 21, revision 1 20- SDK Platform Android 5.0.1, API 21, revision 2 21- SDK Platform Android 4.4W.2, API 20, revision 2 22- SDK Platform Android 4.4.2, API 19, revision 4 23- SDK Platform Android 4.3.1, API 18, revision 3 24- SDK Platform Android 4.2.2, API 17, revision 3 .... |
這里包括不同的Android API 版本和不同的構(gòu)建工具,選擇你想要安裝項(xiàng)目的序號(hào),這里我想安裝 build tools 19.1 ,build tools 21 及 android 4.2.2以上的SDK所以選擇序號(hào) “1,2,3,20,21,22,23”
| android update sdk -u -a -t? 1,2,3,10,20,21,22,23 |
step 3 安裝gradle構(gòu)建環(huán)境
使用Ant構(gòu)建項(xiàng)目已經(jīng)是過(guò)去式了,這里我們選用更加強(qiáng)悍和方便的構(gòu)建工具gradle 。
下載 grdle 二進(jìn)制包
| cd?~ wget https://services.gradle.org/distributions/gradle-2.2.1-bin.zip |
釋放到本地Home目錄,創(chuàng)建名字為”gradle”的符號(hào)鏈接,符號(hào)連接的好處是方便版本更新,有了新的版本直接修改符號(hào)鏈接即可。
| unzip gradle-2.2.1-bin.zip ln?-s gradle-2.2.1 gradle |
配置gradle環(huán)境變量并使其生效,編輯 ~/.profje 文件增加下面內(nèi)容
| GRADLE_HOME=$HOME/gradle export?PATH=$PATH:$GRADLE_HOME/bin |
保存后使環(huán)境變量使其生效
| source?~/.profile |
環(huán)境變量生效后你可以在終端敲入’gradle’命令并運(yùn)行用以檢測(cè)gradle是否安裝成功。
| gradle |
如果安裝配置的沒(méi)有問(wèn)題將會(huì)提示類(lèi)似下面的信息
| :help Welcome to Gradle 2.2.1 To run a build, run gradle <task> ... To see a list of available tasks, run gradle tasks To see a list of command-line options, run gradle --help BUILD SUCCESSFUL |
驗(yàn)證是否可以編譯android 應(yīng)用
完成以上的環(huán)境配置,我們的一個(gè)Android下的基礎(chǔ)構(gòu)建環(huán)境就全部配置好了,接下來(lái)做的事情就是嘗試使用gradle 編譯一個(gè)android 應(yīng)用出來(lái)驗(yàn)證我的編譯環(huán)境是否OK,下載我寫(xiě)的一個(gè)gadle demo 例子進(jìn)行測(cè)試。
| git clone https://github.com/examplecode/gradle_demo cd?gradle_demo/hello-apk-with-gradle gradle build |
一切順利的話,編譯完成后,你會(huì)在 “hello-apk-with-gradle/build/outputs/apk” 目錄下找到編譯好的apk包。至于如何整合到你自己的項(xiàng)目中去,只需要仿照例子給你的項(xiàng)目提供一個(gè)”gradle.build” 腳本即可。
By:http://www.codeceo.com/article/command-android.html
轉(zhuǎn)載請(qǐng)注明出處:http://www.cnblogs.com/haochuang/ 8年IT工作經(jīng)驗(yàn),5年測(cè)試技術(shù)與管理,2年產(chǎn)品與項(xiàng)目管理,曾參與過(guò)云計(jì)算\云存儲(chǔ)\車(chē)聯(lián)網(wǎng)產(chǎn)品研發(fā)工作; 業(yè)余自媒體人,有技術(shù)類(lèi)垂直微信公眾號(hào);如有招聘或求職方面需求,請(qǐng)Mail to uetest@qq.com ;或通過(guò) QQ:363573922 微博:@念槐聚 聯(lián)系;總結(jié)
以上是生活随笔為你收集整理的关于Android构建的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: HDU 2098 分拆素数和
- 下一篇: 小酌重构系列[19]——分解大括号