有没有办法将eclipse命令“android tools->rename application package”作为shell中的脚本执行?
我想用不同的选项(例如免费和付费版本)编译我的android应用程序几次,而不需要手动操作。
自动执行此操作很重要。像库这样的所有解决方案都没有帮助,因为有几件事必须手工完成。

最佳答案

是的,这是可能的。您必须手动调用aapt工具来打包编译的项目,然后再次调用aapt来添加类,用jarsigner签名并与zipalign对齐。通常,EclipseAdt插件为您执行构建步骤链。
下面是这些步骤的调用示例。
使用不同的包名称打包应用程序:

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您可以找到更多信息。

08-05 23:39
查看更多