我最近完成了我的第一个使用Phonegap的混合应用项目。当进行公测时,我对签名过程有些担心。我从这里和其他网络地方阅读了许多不同的建议来解决这个问题。
以下是逐步构建并正确签署发布版本以在Google Play Store中发布的详细步骤。希望能帮到你。祝好!
Phonegap签名和发布流程 开始之前:
以下是逐步构建并正确签署发布版本以在Google Play Store中发布的详细步骤。希望能帮到你。祝好!
Phonegap签名和发布流程 开始之前:
- 确保您的$JAVA_HOME路径中有Java JDK,请在终端中键入$JAVA_HOME并检查正确的Java路径
- 打开Android项目中的androidMainfest.xml,并将application标记中的android:debuggable更改为false
创建私钥(永远不要丢失它!) - 我将密钥保存在个人.ssh文件夹中,因此所有密钥都在同一位置 - 它将要求您输入密码和一些个人详细信息 - 确保用您的密钥库名称和别名替换[key_name]和 [key_alias] (也不要丢失!)
cd /Users/[username]/.ssh
keytool -genkey -v -keyalg RSA -keystore [key_name].keystore -alias [key_alias] -keysize 2048 -validity 50000
- 为了在此项目中后续使用密钥库文件的路径和key_alias,需要在platforms/android文件夹中创建一个新的ant.properties文件,并放入以下内容: (根据您的实际情况更改[username]、[key_name]和[key_alias])
[ant.properties] 文件:
key.store=/Users/[username]/.ssh/[key_name].keystore
key.alias=[key_alias]
2. 构建 release-unsigned.apk
- 切换到您的应用程序的 Android 平台目录,并运行 ant 命令。
cd platforms/android
ant release
3. 签名apk
- 请确保将[username]替换为您的用户名
- 将[key_name]和[key_alias]替换为密钥详细信息(来自步骤1)
- 将[appname]替换为...-release-unsigned.apk的名称
- 系统会要求您输入密钥库密码(在步骤1中设置)
jarsigner -verbose -sigalg MD5withRSA -digestalg SHA1 -keystore /Users/[username]/.ssh/[key_name].keystore [appname]-release-unsigned.apk [key_alias]
4. 创建最终版APK
- 将[appname]替换为你的应用名称,并构建最终发布文件。
zipalign -v 4 [appname]-release-unsigned.apk [appname].apk
5. 将最终版本上传至Google Play商店
最终的应用程序发布现在可以在您的Android项目的bin文件夹中找到,它的名称为[应用程序名称].apk。使用Google Play开发者控制台(https://play.google.com/apps/publish)上传该文件。
创建一个Google组或Google+组,并将其命名为您的应用程序的alpha/beta测试组。该组中的每个人都可以在应用商店中看到您的测试版本并安装它。这是一个非常有用的工具,相比于iOS的复杂流程更加方便实用。
祝愉快测试 :)
android-sdk\build-tools\build-tools-(sdk-number)
,然后在那里运行命令。另一种解决方法是将zipalign.exe复制到android-sdk\tools
中。更多信息 - Sjoerd Pottuit