android自動化測試六之命令列編譯APK
手動編譯你的apk,可以讓資源目錄不命名為res, 你能夠命名任何你想要的名字。
你可以在以下目錄發現ant指令碼: <SDK_HOME>/platforms/android-1.5/templates/android-rules.xml
第一步: 產生R檔案以及包資源
aapt package -f -M ${manifest.file} -F ${packaged.resource.file} -I ${path.to.android-jar.library} -S ${android-resource-directory} [-m -J ${folder.to.output.the.R.java}]
第二步:編譯java原始檔以及R.java檔案
use javac
第三步:將classes檔案轉化成Dalvik自節碼
use dx.bat
dx.bat –dex –output=${output.dex.file} ${compiled.classes.directory} ${jar files..}
第四步:建立未簽名的apk
use apkbuilder
apkbuilder ${output.apk.file} -u -z ${packagedresource.file} -f ${dex.file}
or
apkbuilder ${output.apk.file} -u -z ${packagedresource.file} -f ${dex.file} -rf ${source.dir} -rj ${libraries.dir}
-rf = resources required for compiled source files?
-rj = resources required for jar files
第六步: 產生一個key
use keytool
第七步驟: 對APK進行簽名
use jarsigner
jarsigner -keystore ${keystore} -storepass ${keystore.password} -keypass ${keypass} -signedjar ${signed.apkfile} ${unsigned.apkfile} ${keyalias}
第八步: 釋出
use adb
adb -d install -r ${signed.apk}
Inspecting your APK file:
aapt list -v latest.apk
Open questions:
1. Can you include more than one dex file in the apk?
2. Can you have dex file named other than classes.dex in the apk?
3. Does an apk have to have a packaged resource?
你可以在以下目錄發現ant指令碼: <SDK_HOME>/platforms/android-1.5/templates/android-rules.xml
第一步: 產生R檔案以及包資源
aapt package -f -M ${manifest.file} -F ${packaged.resource.file} -I ${path.to.android-jar.library} -S ${android-resource-directory} [-m -J ${folder.to.output.the.R.java}]
第二步:編譯java原始檔以及R.java檔案
use javac
第三步:將classes檔案轉化成Dalvik自節碼
use dx.bat
dx.bat –dex –output=${output.dex.file} ${compiled.classes.directory} ${jar files..}
第四步:建立未簽名的apk
use apkbuilder
apkbuilder ${output.apk.file} -u -z ${packagedresource.file} -f ${dex.file}
or
apkbuilder ${output.apk.file} -u -z ${packagedresource.file} -f ${dex.file} -rf ${source.dir} -rj ${libraries.dir}
-rf = resources required for compiled source files?
-rj = resources required for jar files
第六步: 產生一個key
use keytool
第七步驟: 對APK進行簽名
use jarsigner
jarsigner -keystore ${keystore} -storepass ${keystore.password} -keypass ${keypass} -signedjar ${signed.apkfile} ${unsigned.apkfile} ${keyalias}
第八步: 釋出
use adb
adb -d install -r ${signed.apk}
Inspecting your APK file:
aapt list -v latest.apk
Open questions:
1. Can you include more than one dex file in the apk?
2. Can you have dex file named other than classes.dex in the apk?
3. Does an apk have to have a packaged resource?
相關文章
- [android]android自動化測試六之命令列編譯APKAndroid命令列編譯APK
- [android]android自動化測試二之命令列建立AVDAndroid命令列
- Android 自動化測試之 MonkeyAndroid
- [android]android自動化測試十三之monkeyRunner自動化框架Android框架
- [android]android自動化測試十三之sciroccoAndroid
- [android]android自動化測試五之RobolectricAndroid
- [android]android自動化測試十四之dumpsys效能測試Android
- Junit測試Android自動化測試Android
- [android]android自動化測試十之單元測試例項Android
- [android]android自動化測試十五之junitRepoterAndroid
- [android]android自動化測試九之monkeyRecordAndroid
- [android]android自動化測試Android
- Android Apk反編譯系列教程(一)如何反編譯APKAndroidAPK編譯
- 測試開發之自動化篇-自動化測試框架設計框架
- Appium自動化測試之常用的adb命令APP
- Web自動化-Selenium自動化測試-4-編寫測試用例Web
- [Android]android自動化測試十六之calabash-androidAndroid
- 自動化測試系列 —— UI自動化測試UI
- 【編測編學】自動化測試面試必背(上)面試
- 【編測編學】自動化測試面試必背(下)面試
- UI自動化測試之AirtestUIAI
- Android 自動編譯、打包生成apk檔案 3 - 使用SDK Ant方式Android編譯APK
- Android 談談自動化測試Android
- Gluon 編譯 JavaFx -> android apk編譯JavaAndroidAPK
- AutoRunner 功能自動化測試專案實訓之自動化測試原理(一)
- [android]android自動化測試十三之JavaMonkey跨APP操作AndroidJavaAPP
- [android]android自動化測試十二之程式碼控制截圖Android
- [android]android自動化測試四之Monkey與MonkeyRunnerAndroid
- Android自動化測試之Monkeyrunner從零開始Android
- [android]android自動化測試七之動態AVD硬體引數Android
- 分享一個自動編譯,打包,簽名 android apk 的小指令碼編譯AndroidAPK指令碼
- Android 安全之如何反編譯與加密apk包Android編譯加密APK
- Android安全之如何反編譯與加密apk包Android編譯加密APK
- Android自動化測試解決方案Android
- 【自動化測試入門】自動化測試思維
- Android自動化測試入門(四)單元測試Android
- 關於Android APK反編譯AndroidAPK編譯
- 介面自動化測試之PHPUnit-框架程式碼編寫2PHP框架