我已经使用3.0之前的PhoneGap构建了几个Android应用程序,所有这些都需要使用Eclipse进行编译。在Eclipse中,我可以导出一个"已签名的应用程序包",其中包含密码和密钥库文件。但在带有CLI的PG 3.0中,apk文件是用"cordova build android"构建的,在platforms/android/bin中生成的apk文件以"-debug.apk"结尾。从文件名和我在任何地方都找不到密钥库文件的事实来看,似乎使用了调试证书。
PG3.0+应该创建一个签名的应用程序包吗?还是我应该打开Eclipse并从那里为apk创建签名的版本?我想知道我是否应该在config.xml中添加更多的行来制作一个签名的应用程序,但经过搜索和阅读,我还没有看到任何关于为此目的使用xml文件的详细信息。
PG 3.0是否停止只创建一个调试apk,然后我们去Eclipse创建最终的apk?
资源:http://www.intown.biz/2014/07/15/signing-your-cordova-android-app/
-
要通过CLI创建已签名的apk,请打开终端应用程序。
-
确保你的起始位置在项目的/helloCordova根文件夹中,然后运行:
keytool-genkey-v-keystore hellocodova.keystore-alias hellocodova-keyalg RSA-keysize 2048-validity 10000
在每次提示时回答问题。有关2个字母的国家/地区代码,请查找此列表:http://www.worldatlas.com/aatlas/ctycodes.htm
-
如果任何信息错误,请键入两个字母以重新输入该信息。例如,cn可以更改您的名字和姓氏。输入"是"确认信息。
-
如果以下信息的密码与以前的信息相同,则返回(点击回车)。
您的密钥库文件保存在/helloCordova/hellocodova.keystore中。获取完整路径以供以后使用:/Users//helloCordova/hellocadova.kkeystore(我通过将helloCordova.keystore文件从Finder窗口拖动到Terminal应用程序中来获取路径。)
-
在文本编辑器中打开helloCordova/helloCordova.properties。
-
在末尾添加两行(文件将自动保存):
key.store=hellocodova.keystorekey.alias=hellocodova
-
在文本编辑器中打开helloCordova/platforms/local.properties。
-
在这个文件中添加两行,尽管上面写着:"这个文件是自动生成的。不要修改这个文件——你的更改将被删除!"
key.store=/hellocodova.keystorekey.alias=hellocodova
运行时,脚本将暂停,系统会两次提示您输入密码,并且不会混淆。
- 在终端中,运行:
cordova构建android-发布
- 您的hellocodova-release.apk文件经过签名和zip对齐,放入/hellocodova/platforms/android/ant构建中(检查您的项目视图窗口)。这是您上传到Google Play的文件
到目前为止,一切都很好。。。但是,当涉及到Google Play的构建时,你可能会想使用"--release"选项来运行"cordova biuld android-release",对吧?这将产生一些命名方案为"-releaseunsigned.apk"的apk。
然后,在用"jarsigner"签名后,apk的名称仍然保留。
因此,我认为,在上传到AppStore之前,必须手动重命名它。
因此:首先使用"--release"选项构建它。第二个签名,第三个改名。上传
正确吗?