有沒有辦法從shell中將Eclipse命令「Android Tools - > Rename Application Package」作爲腳本執行?Android:在Eclipse中重命名包
我想用不同的選項(例如免費和付費版本)多次編譯我的Android應用程序,而無需手動執行某些操作。 自動執行此操作非常重要。所有像庫這樣的解決方案都無濟於事,因爲有幾件事情必須手工完成。
有沒有辦法從shell中將Eclipse命令「Android Tools - > Rename Application Package」作爲腳本執行?Android:在Eclipse中重命名包
我想用不同的選項(例如免費和付費版本)多次編譯我的Android應用程序,而無需手動執行某些操作。 自動執行此操作非常重要。所有像庫這樣的解決方案都無濟於事,因爲有幾件事情必須手工完成。
是的,這是可能的。您必須手動調用aapt
工具來打包已編譯的項目,然後再次調用aapt
以添加類,請使用jarsigner
對其進行簽名,並將其與zipalign
對齊。通常,Eclipse ADT插件會爲您製作構建步驟鏈。
這些步驟的示例調用如下。
包裝用不同的包名的應用程序:
aapt package -f -M ./AndroidManifest.xml -S res/ \
-I android.jar -F renamed_project.apk.unaligned \
--rename-manifest-package "com.example.some_new_package" -v
然後添加類:
aapt add -f renamed_project.apk.unaligned classes.dex -v
簽名:
jarsigner -verbose -sigalg MD5withRSA -digestalg SHA1 \
-keystore "some_keystore_file" \
renamed_project.apk.unaligned "key_name"
對齊它:
zipalign -v 4 renamed_project.apk.unaligned renamed_project.apk
一些更多的信息可以例如here找到。
此外,您可以使用Ant
更輕鬆地完成此操作。 Here你可以找到更多的信息。
我不認爲這是可能的,最快的方法是使用鍵盤快捷鍵(cmd +選項+ R在操作系統x) – vault 2013-03-04 16:45:48
好問題,這將是非常方便。儘管如此,我發現UI工具不到100%完美,所以我不確定我是否會將它用作自動構建的一部分。 – 2013-03-04 16:46:27
「像庫這樣的所有解決方案都無濟於事,因爲有幾件事情必須手工完成」 - 這些「幾件事情」是什麼? – CommonsWare 2013-03-04 16:47:43