对 Android 应用程序包进行签名
在做好应用程序发布准备中,使用了“存档管理器”以生成应用并将它放置在存档中以进行签名和发布。 此部分说明如何创建 Android 签名标识、为 Android 应用程序创建新签名证书以及将存档应用即席发布到磁盘。 生成的 APK 可以旁加载到 Android 设备中,而无需经过应用商店。
在“存档以供发布”中,“分发通道”对话框显示两个分发选项。 选择“即席”:
创建新证书
选择“即席”之后,Visual Studio 会打开对话框的“签名标识”页,如下一个屏幕截图所示。 若要发布 .APK,必须首先使用签名密钥(也称为证书)对它进行签名。
可以通过单击“导入”按钮,然后前进到对 APK 进行签名,来使用现有证书。 否则,单击“”+按钮创建新证书:
“创建 Android 密钥存储库”对话框显示;使用此对话框来新建可用于对 Android 应用进行签名的签名证书。 输入所需信息(具有红色边框),如此对话框中所示:
下面的示例说明必须提供的信息的种类。 单击“创建”以创建新证书:
生成的密钥存储位于以下位置:
C:\Users\USERNAME\AppData\Local\Xamarin\Mono for Android\Keystore\ALIAS\ALIAS.keystore
例如,使用“chimp”作为别名,以上步骤会在以下位置创建新签名密钥:
C:\Users\USERNAME\AppData\Local\Xamarin\Mono for Android\Keystore\chimp\chimp.keystore
重要
默认情况下,“AppData”文件夹是隐藏的,你可能需要取消隐藏它来访问它。
此外,请务必将生成的密钥存储库文件和密码备份在安全的位置 – 不在解决方案中。 如果密钥存储文件(例如,因为移动到另一台计算机或重新安装了 Windows)丢失,将无法使用与以前版本相同的证书对应用签名。
有关密钥存储的详细信息,请参阅查找密钥存储的 MD5 或 SHA1 签名。
对 APK 进行签名
单击“创建”时,新密钥存储(包含新证书)会进行保存并在“签名标识”下列出,如下一个屏幕截图所示。 若要在 Google Play 上发布应用,请单击“取消”并转至发布到 Google Play。 若要即席发布,请选择要用于签名的签名标识并单击“另存为”以发布应用以用于独立分发。 例如,在此屏幕截图中选择了 chimp 签名标识(在前面创建):
接下来,存档管理器会显示发布进度。 发布过程完成时,“另存为”对话框会打开,要求提供要在其中存储生成的 .APK 文件的位置:
导航到所需位置并单击“保存”。 如果密钥密码未知,则“签名密码”对话框会出现,提示输入所选证书的密码:
签名过程完成之后,单击“打开分发”:
这会使 Windows 资源管理器打开包含生成的 APK 文件的文件夹。 此时,Visual Studio 已将 Xamarin.Android 应用程序编译为准备好进行分发的 APK。 下面的屏幕截图显示准备好进行发布的应用 (MyApp.MyApp.apk) 的示例:
后续步骤
对要发行的应用程序包进行签名之后,必须发布它。 以下各部分介绍用于发布应用程序的几种方法。