一,準備ant
ant 官網可下載下傳
http://ant.apache.org/
ant 環境配置:
1。解壓ant的包到本地目錄。
2。在環境變量中設定ANT_HOME,值為你的安裝目錄。
3。把ANT_HOME/bin加到你系統環境的path。
更多的介紹可以去google相信有很多
二,詳細步驟和說明,這裡我們要知道一些Android指令。
前提條件已配置好android sdk 環境,是以可以在任意目錄下執行android 指令,不然則要切換到 android-sdk\tools目錄下
我這裡已經配置好了,是以無論我在什麼路徑下了。
1.建立一個android項目
參數說明:
-k /--package 為命名空間(包名)-a /--name 工程名
-p /--path 項目 -t 為目标平台的版本編号
C:\Documents and Settings\Administrator>android create project -k com.android.Ta
nk -a Tank -t 4 -p F:\tank
列出不同版本平台的對應id編号 android.bat list targets /android list
C:\Documents and Settings\Administrator>android.bat list targets
對已經存在的android工程,我們可以update下(修改平台的版本),這樣會自動添加build.xml 等ant 的配置檔案
C:\Documents and Settings\Administrator>android update project --name Tank -t 11
-p F:\tank
編譯:直接ant 是不會有檔案輸出的,是以後面一定要帶上參數
ant 參數如下:
* debug:帶調試用簽名的建構
* release:建構應用程式,生成的apk必須簽名才可以釋出
* install:安裝調試建構的包到運作着的模拟器或者裝置;
* reinstall
* uninstall
開始執行編譯:
E:\MyLiB\Android\AndroidAnt\MyBoardCastReciver>ant debug
Buildfile: E:\MyLiB\Android\AndroidAnt\MyBoardCastReciver\build.xml
[setup] Android SDK Tools Revision 7
[setup] Project Target: Android 2.2
[setup] API level: 8
[setup]
[setup] ------------------
[setup] Resolving library dependencies:
[setup] ------------------
[setup] Ordered libraries:
[setup] ------------------
[setup]
[setup] WARNING: No minSdkVersion value set. Application will install on all
Android versions.
[setup]
[setup] Importing rules file: tools\ant\ant_rules_r3.xml
[javac]****警告:編碼 ascii 的不可映射字元********
出現“警告:編碼 ascii 的不可映射字元”錯誤
編譯亂碼解決辦法:
檢視輸出提示:
[setup] Importing rules file: tools\ant\ant_rules_r3.xml
找到sdk目錄下的<sdkpath>\tools\ant\ant_rules_r3.xml
打開找到節點:
<javac encoding="ascii" target="1.5" debug="true" extdirs="" ....>
把ascii改為gbk即可。
啟動相應模拟器:emulator -avd avdName
E:\MyLiB\Android\AndroidAnt\Toast>emulator -avd tank
列出已有avd 的清單
E:\MyLiB\Android\AndroidAnt\Toast\bin>adb devices
List of devices attached
emulator-5554 device
安裝到指定avd
E:\MyLiB\Android\AndroidAnt\Toast\bin>adb -s emulator-5554 install Toast-debug.a
pk
ok ,ant 編譯android 并手動安裝apk檔案就寫到這裡了。是不是也很COOL!
首先,做任何開發前,肯定是各種環境搭建和配置啊,ant的搭建很簡單:
一、安裝ant
到官方首頁http://ant.apache.org下載下傳新版(目前為Ant-1.9.2)的ant,得到的是一個apache-ant-1.8.1-bin.zip的壓縮包。将其解壓到你的硬碟上,例如:D:\Android\apache-ant-1.9.2
二、配置環境變量
window中設定ant環境變量:
ANT_HOME D:/Android/apache-ant-1.9.2
path D:/Android/apache-ant-1.9.2/bin
classpath D:/Android/apache-ant-1.9.2/lib
linux中設定ant環境變量:
root使用者登陸,用vi編輯器修改root目錄下的".bash_profile"屬性檔案,假設Ant安裝在/user/local/ant目錄下,要在檔案的最後加上
"exportANT_HOME=/user/local/ant"和"export PATH=$PATH:$ANT_HOME/bin"
三、驗證ant
為了驗證ant是否成功安裝,可以進行如下操作:
依次選擇:開始->運作->cmd,輸入如下指令:ant
如果出現如下内容,說明安裝成功:
Buildfile: build.xml does not exist!
Build failed
當然,JAVA_HOME、ANDROID_SDK_HOME等的配置這裡就不說了
四、我們就在項目中添加build.xml
code如下:
| |
| |
| |
| |
|
| |
|
| |
| |
|
| |
| |
| |
| |
|
| |
| |
| |
| |
|
| |
| |
| |
| |
|
| |
| |
| |
| |
|
| |
| |
| |
|
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
|
| |
| |
| |
|
| |
|
| |
| |
| |
| |
|
| |
| |
| |
|
| |
|
| |
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
|
| |
| |
| |
|
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
| |
|
| |
|
| |
| |
| |
|
| |
|
| |
|
| |
| |
|
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
|
| |
| |
|
| |
| |
|
| |
| |
|
| |
|
| |
| |
| |
| |
|
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
| |
| |
| |
|
| |
|
| |
| |
| |
|
| |
|
| |
| |
| |
| |
| |
|
| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
| |
| |
| |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
| |
|
| |
|
| |
|
| |
|
| |
| |
| |
|
| |
| |
|
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
| |
|
| |
| |
|
| |
|
| |
| |
| |
|
| |
|
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
| |
| |
|
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
| |
|
| |
| |
| |
| |
|
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
| |
|
| |
| |
| |
|
| |
|
| |
| |
| |
|
| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
| |
如果不需要混淆代碼,去掉上面的 proguard相關的配置就可以了
五、配置proguard屬性:
proguard-project.txt
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| |
| |
|
| |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
|
| |
| |
| |
| |
|
| |
| |
| |
| |
上面的配置中,blockcheng、BC等開頭的類,都是被我替換的,不是真實的,具體的類包名和類名,以各人自己的為主。
注意,這個混淆中,開始幾行配置很重要,網上很多同學問的ant、proguard相關的錯誤(什麼找不到app.android.v4類等),都是因為缺少這幾行導緻,但沒人回答,這裡,我就直接給出了:
| |
| |
|
| |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
這個配置主要是針對 android-support.v4和庫相關的,請需要的同學注意。
最後的幾行配置,是因為我代碼中調用了asset中js檔案導緻的,js相關的操作代碼,是不可以混淆的,故需要避開。
六、運作ant指令,建構開始:
指令行輸入類似: D:/Android/apache-ant-1.9.2/bin/ant.bat -buildfile D:/workspa
ceAndroid/naomiHappyShopping/build.xml
就可以完成代碼混淆和apk輸出:
view source print ?
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
| |
| |
看看時間,是不是比手動友善多了啊,而且反編譯一看,代碼真的不能再讀了。
另外注意:不同人的路徑等配置,需要根據各人自己的來,不能直接拷貝引用。
轉自 :
http://my.oschina.net/chengliqun/blog/158820