对 Android 应用程序包进行签名

第 2 部分 - 对 Android 应用程序包进行签名

可离线查看的 PDF

本指南介绍如何对 Android 应用程序包进行签名。 如果使用较旧版本的 Xamarin Studio(版本 5.9 之前),请参阅 Xamarin Studio 5.8 及更低版本

对 APK 进行签名

 

在此部分中,我们会使用 Xamarin Studio 的集成发布工作流对 APK 进行签名。 在第 1 部分中,我们使用存档管理器生成应用并将它放置存档中以便进行签名和发布。 在此部分中,我们会了解如何创建 Android 签名标识、为 Android 应用程序创建新签名证书以及将存档应用即席发布到磁盘。 生成的 APK 可以旁加载到 Android 设备中,而无需经过应用商店。

存档以便进行发布中,“签名和分发...”对话框向我们提供了两种分发选择。 选择“即席”,然后单击“下一步”:

“签名和分发”对话框

创建新证书

 

单击“即席”之后,Xamarin Studio 会打开“Android 签名标识”对话框,如下一个屏幕截图所示。 若要发布 .APK,必须首先使用签名密钥(也称为证书)对它进行签名。 如果证书已存在,则单击“导入现有密钥”按钮以导入它,然后前进到对 APK 进行签名。否则,单击“创建新密钥”按钮以创建新证书:

“Android 签名标识”对话框

“创建新证书”对话框用于创建可以用于对 Android 应用程序进行签名的新签名证书。 输入所需信息之后,单击“确定”:

“新建证书”对话框

生成的密钥存储位于以下位置:

~/Library/Developer/Xamarin/Keystore/alias/alias.keystore

例如,以上步骤可能会在以下位置创建新签名密钥:

~/Library/Developer/Xamarin/Keystore/chimp/chimp.keystore

ℹ️

注意:请确保将生成的密钥存储文件备份在安全的位置 – 不包含在解决方案中。 如果密钥存储文件(例如,因为移动到另一台计算机或重新安装了 Mac)丢失,将无法使用与以前版本相同的证书对应用签名。

有关密钥存储的详细信息,请参阅查找密钥存储的 MD5 或 SHA1 签名

对 APK 进行签名

 

如此处所示,一个新证书已添加到密钥存储中。 若要在 Google Play 上发布应用,请单击“取消”,然后转到第 3 部分。 否则,单击“下一步”以即席发布应用(对于独立分发),如此示例所示:

“签名和分发”对话框

“即席发布”对话框会在发布之前提供已签名应用的摘要。 如果此信息正确,则单击“发布”。

“临时发布”对话框

“输出 APK 文件”对话框会将 APK 保存到指定路径。 单击“保存” 。

“输出 APK 文件”对话框

接下来,为证书输入密码(在“创建新证书”对话框中使用的密码),然后单击“确定”:

输入证书密码

APK 会使用证书进行签名并保存到指定位置。 单击“在查找器中展现”:

“发布成功”对话框

这会将查找器打开到已签名 APK 文件的位置:

查找器中显示的 APK

APK 已准备好从查找器进行复制并发送到其最终目标。 最好在分发之前将 APK 安装在 Android 设备上并进行试用。 有关发布即席 APK 的详细信息,请参阅第 6 部分

本指南介绍如何使用 Xamarin Android 7.0 或更高版本对 Android 应用程序包进行签名。 如果使用 Xamarin Android 版本 4.2.6 到 6.1,请参阅对 Android 应用程序包进行签名(Visual Studio XA 4.2.6 到 6.1)

对 APK 进行签名

 

此部分介绍用于对 Visual Studio 提供的 APK 进行签名的集成发布工作流。 在第 1 部分中,使用了存档管理器生成应用并将它放置存档中以便进行签名和发布。 此部分说明如何创建 Android 签名标识、为 Android 应用程序创建新签名证书以及将存档应用即席发布到磁盘。 生成的 APK 可以旁加载到 Android 设备中,而无需经过应用商店。

存档以便进行发布中,“分发渠道”对话框提供了两种分发选择。 选择“即席”:

“分发通道”对话框

创建新证书

 

选择“即席”之后,Visual Studio 会打开对话框的“签名标识”页,如下一个屏幕截图所示。 若要发布 .APK,必须首先使用签名密钥(也称为证书)对它进行签名。

可以通过单击“导入”按钮,然后前进到对 APK 进行签名,来使用现有证书。 否则,单击“+”按钮创建新证书:

临时签名标识

会显示“创建 Android 密钥存储”对话框;使用此对话框可创建可以用于对 Android 应用程序进行签名的新签名证书。 输入所需信息(具有红色边框),如此对话框中所示:

“创建 Android 密钥存储”对话框

下面的示例说明必须提供的信息的种类。 单击“创建”以创建新证书:

创建新的证书

生成的密钥存储位于以下位置:

C:\Users\USERNAME\AppData\Local\Xamarin\Mono for Android\alias\alias.keystore

例如,以上步骤可能会在以下位置创建新签名密钥:

C:\Users\USERNAME\AppData\Local\Xamarin\Mono for Android\chimp\chimp.keystore

ℹ️

注意:请确保将生成的密钥存储文件备份在安全的位置 – 不包含在解决方案中。 如果密钥存储文件(例如,因为移动到另一台计算机或重新安装了 Windows)丢失,将无法使用与以前版本相同的证书对应用签名。

有关密钥存储的详细信息,请参阅查找密钥存储的 MD5 或 SHA1 签名

对 APK 进行签名

 

单击“创建”时,新密钥存储(包含新证书)会进行保存并在“签名标识”下列出,如下一个屏幕截图所示。 若要在 Google Play 上发布应用,请单击“取消”,然后转到第 3 部分。 若要即席发布,请选择要用于签名的签名标识并单击“另存为”以发布应用以用于独立分发。 例如,在此屏幕截图中选择了 chimp 签名标识(在前面创建):

签名标识示例

接下来,存档管理器会显示发布进度。 发布过程完成时,“另存为”对话框会打开,要求提供要在其中存储生成的 .APK 文件的位置:

“另存为”对话框

导航到所需位置并单击“保存”。 如果密钥密码未知,则“签名密码”对话框会出现,提示输入所选证书的密码:

“签名密码”对话框

签名过程完成之后,单击“打开文件夹”:

“打开文件夹”按钮

这会使 Windows 资源管理器打开包含生成的 APK 文件的文件夹。 此时,Visual Studio 已将 Xamarin.Android 应用程序编译为准备好进行分发的 APK。 下面的屏幕截图显示准备好进行发布的应用 (MyApp.MyApp.apk) 的示例:

Windows 资源管理器中显示的 APK

后续步骤

 

对要发行的应用程序包进行签名之后,必须发布它。 以下各部分介绍用于发布应用程序的几种方法。

猜你喜欢

转载自blog.csdn.net/xsfqh/article/details/77010719