- 发布用于特定目的的分发
- 使用命令行发布
将 Android 应用分发给用户的最常用方法是通过 Google Play。 首次将应用提交到 Google Play 时,必须通过 Google Play Console 提交它。 可以通过 Visual Studio 提交应用的后续版本。 在这两种情况下,都需要 Google Play 开发人员帐户。 提交到 Google Play 的应用需要 Google 批准。
若要分发 .NET 多平台应用 UI (.NET MAUI) Android 应用,需要在上传到 Google Play 之前使用密钥存储中的密钥对其进行签名。 密钥存储是充当证书和私钥存储库的二进制文件。
Google Play 要求将应用提交为 Android 应用捆绑包(AAB)。 Google Play 使用应用捆绑包为每个设备配置生成和提供优化的 Android 包(APK),以便仅下载特定设备所需的代码和资源才能运行应用。 有关 Android 应用捆绑包的详细信息,请参阅 developer.android.com 上的 关于 Android 应用捆绑包。
通过 Google Play 分发 .NET MAUI Android 应用的过程如下所示:
- 创建 Google Play 开发人员帐户。 有关详细信息,请参阅 创建 Google Play 开发人员帐户。
- 在 Google Play Console 中创建应用。 有关详细信息,请参阅 在 Google Play Console中创建应用。
- 在 Google Play Console 中设置应用。 有关详细信息,请参阅 在 Google Play Console 中设置您的应用。
- 确保应用使用正确的包格式。 有关详细信息,请参阅 确保正确的包格式。
- 在 Visual Studio 中生成和签名应用,然后通过 Google Play Console 分发应用。 有关详细信息,请参阅 通过 Google Play Console分发您的应用。
然后,可以通过 Visual Studio 发布应用的后续版本。 有关详细信息,请参阅 通过 Visual Studio分发应用。
创建 Google Play 开发人员帐户
若要在 Google Play 上发布 Android 应用,需要创建 Google Play 开发人员帐户:
- 使用 Google 帐户注册 Google Play 开发人员帐户。
- 输入有关开发人员标识的信息。
- 在注册过程中,你需要查看并接受 Google Play 开发者分发协议。
- 支付一次性 25 美元的注册费。
- 按照验证电子邮件中的说明验证身份。
重要
必须先完成身份验证,然后才能通过 Google Play 发布应用。 此外,新的个人帐户持有者必须验证他们是否有权访问真正的 Android 设备。 有关详细信息,请参阅 support.google.com 上关于新开发者帐户的设备验证要求 。
创建 Google Play 开发人员帐户后,你将能够开始将应用发布到 Google Play 的过程。
有关详细信息,请参阅 support.google.com 上注册 Google Play 开发人员帐户。
在 Google Play Console 中创建应用
创建 Google Play 开发人员帐户后,需要在 Google Play Console 中创建应用:
登录到Google Play 开发人员帐户。
在 Google Play Console中,在“所有应用”选项卡上,选择“创建应用 ”按钮:
在 “创建应用”页中,输入应用详细信息,然后选择“创建应用 ”按钮:
有关在 Google Play Console 中创建应用的详细信息,请参阅 创建和设置应用 support.google.com。
在 Google Play Console 中设置应用
创建应用后,应对其进行设置。 应用的仪表板将指导你完成所有最重要的步骤。
若要配置应用程序,请在左侧菜单中选择 仪表板。 在页面顶部的应用详细信息下,可以找到与应用设置和发布相关的不同类别和任务。 必须先完成强制性任务,然后才能在 Google Play 上启动应用。 完成任务后,您会看到绿色对勾和删除线文字。 该节顶部的进度栏也将更新。 有关详细信息,请参阅 在应用仪表板上设置应用 support.google.com。
确保正确的包格式
若要发布适用于 Google Play 分发的 .NET MAUI Android 应用,需要应用包格式为 AAB,这是发布版本的默认包格式。 若要验证应用的包格式是否已正确设置,请执行以下操作:
在 Visual Studio 的 解决方案资源管理器中, 右键单击 .NET MAUI 应用项目并选择 属性。 然后,导航到“Android > 选项”选项卡,并确保“发布”字段的值设置为 捆绑包:
发布
通过 Google Play Console 分发应用
首次将 AAB 提交到 Google Play 时,必须通过 Google Play 控制台手动上传它。 这使 Google Play 能够将所有未来捆绑包上的密钥签名与用于应用第一个版本的原始密钥匹配。 若要通过 Google Play Console 上传应用,必须先在 Visual Studio 中生成并对其进行登录。
若要在 Visual Studio 中生成和签名应用,请执行以下操作:
在 Visual Studio 工具栏中,使用 调试目标 下拉列表选择 Android 模拟器,然后选择所选模拟器:
在 Visual Studio 工具栏中,使用 解决方案配置 下拉列表从调试配置更改为发布配置:
在 解决方案资源管理器中,右键单击 .NET MAUI 应用项目并选择 发布...:
存档管理器 将打开,Visual Studio 将开始存档应用捆绑包:
在 存档管理器中,存档成功完成后,请确保选择存档,然后选择“分发...” 按钮开始分发应用的过程:
将显示 分发 - 选择频道 对话框。
在 分发 - 选择频道 对话框中,选择 临时 按钮:
在 分发 - 签名标识 对话框中,选择 + 按钮创建新的签名标识:
“创建 Android 密钥存储 ”对话框 将出现。
注意
或者,可以通过选择 “导入”按钮来使用现有的签名标识。
在 “创建 Android 密钥存储”对话框中,输入创建新的签名标识所需的信息,称为 密钥存储,然后选择“创建 ”按钮:
- 别名。 输入密钥的标识名称。
- 密码。 创建并确认密钥的安全密码。
- 有效性。 设置密钥有效的时间长度(以年为单位)。
- 全名、组织单位、组织、城市或地方、州或省和国家/地区代码。 此信息不会显示在应用中,但包含在证书中。
包含新证书的新密钥存储将保存到 C:\Users{Username}\AppData\Local\Xamarin\Mono for Android\Keystore{Alias}{Alias}.keystore。
重要
密钥存储和密码没有保存到 Visual Studio 解决方案中。 因此,请确保备份此数据。 如果丢失,将无法使用相同的签名标识对应用进行签名。
在 分发 - 签名标识 对话框中,选择新创建的签名标识,然后选择 另存为 按钮:
存档管理器 显示发布过程。
在“另存为 对话框中,确认包的位置和文件名正确,然后选择 ”保存“按钮。
在“签名密码”对话框中,输入签名标识密码,然后选择“确定 ”按钮:
在发布过程完成后,在 存档管理器中选择 “打开分发”按钮:
Visual Studio 将打开包含已发布应用的文件夹。
然后,可以通过 Google Play Console 将已发布的应用发布到 Google Play。 为此,必须先在 Google Play Console 中创建一个版本。 发布是一个或多个要准备的应用版本的组合,用于启动应用或推出更新。 可以在以下渠道上创建发布:
- 内部测试。 内部测试版本最多可供 100 名测试人员选择。
- 封闭测试 关闭的测试版本可供你选择的有限数量的测试人员使用,他们可以测试应用的预发布版本并提交反馈。
- 打开测试。 公开测试版本可供 Google Play 上的测试人员使用。 用户可以从商店列表中加入测试。
- 生产。 生产版本可供所选国家/地区的所有 Google Play 用户使用。
有关在 Google Play Console 中创建版本的详细信息,请参阅 准备和发布版本 support.google.com。
重要
提交到 Google Play 的应用通常会经历评审过程。 有关详细信息,请参阅为审核准备您的应用 和 在 support.google.com 上发布您的应用。
通过 Visual Studio 分发应用
AAB 必须已提交到 Google Play,并且已通过评审,然后才能从 Visual Studio 分发它。 如果您尝试分发一个还没有通过 Play Console 上传的 Visual Studio 的 AAB 文件,您将收到以下错误信息:
Google Play 要求你为此应用手动上传第一个包(APK/AAB)。 为此,你可以使用一个临时包。
发生此错误时,请通过 Google Play Console 手动上传 AAB。 然后,可以通过 Visual Studio 发布应用的后续版本。 但是,必须为每个上传更改应用的版本代码,否则会发生以下错误:
已上传的 AAB 版本代码为(1)。
若要解决此错误,请使用其他版本号重新生成应用,然后通过 Visual Studio 将其重新提交到 Google Play。
注意
可以通过增加应用项目文件中 ApplicationVersion
整数属性的值来更新应用的版本号。
首先,将应用从 Visual Studio 上传到 Google Play 需要你在 Google Play Console 中设置 API 访问权限。
启用 Google API 访问
Google Play 开发人员发布 API 使 Visual Studio 能够将新版本的应用上传到 Google Play。 在 Visual Studio 开始进行 API 调用之前,需要在 Google Play 开发人员帐户中设置 API 访问权限。 这包括将 Google Play 开发人员帐户链接到 Google Cloud 项目,以及配置使用 OAuth 客户端访问 Google Play 开发人员发布 API 的权限。
启用对 Google API 的访问:
登录到Google Play 开发人员帐户。
在 Google Play Console中,展开 安装程序 项,然后选择 API 访问。 然后在 API 访问 页中,选择 选择要链接 按钮的项目:
若要使用 Google Play 开发人员 API,需要一个必须链接到 Google Play 开发人员帐户的 Google Cloud 项目。
注意
Google Play 开发人员帐户只能链接到单个 Google Cloud 项目。 因此,如果从一个 Google Play 开发人员帐户发布多个应用,它们都必须共享相同的 Google Cloud 项目。
在 API 访问 页面中,选择 创建新的 Google Cloud 项目 单选按钮,然后点击 “保存” 按钮:
将创建一个新的 Google Cloud 项目并将其链接到 Google Play 开发人员帐户。
在 API 访问 页的 OAuth 客户端 部分中,选择 配置 OAuth 同意屏幕:
在“OAuth 授权同意屏幕 页”中,选择所需的用户类型单选按钮,然后选择 创建 按钮:
有关用户类型的详细信息,请参阅 support.google.com 上的 用户类型。
在 编辑应用注册 页中,填写标记为必填的字段,然后选择 “保存并继续” 按钮:
在 “编辑应用注册”页中,选择 “添加或删除范围”按钮:
在 更新所选范围 弹出框中,选择表中的
./auth/androidpublisher
范围,然后选择 更新 按钮:注意
表中的其他作用域可以选择,因为它们是标准作用域。
在“编辑应用注册页面”中,选择“凭据”选项卡:
在 凭据 页中,选择“+ 创建凭据”按钮,然后选择 OAuth 客户端 ID 项:
在“创建 OAuth 客户端 ID”页的“应用程序类型 下拉列表中选择 桌面应用,在”名称“字段中输入 Visual Studio,然后选择 CREATE 按钮:
在 OAuth 客户端创建 对话框中,选择 下载 JSON 数据 按钮以下载您的客户端 ID 和客户端密钥。 稍后将需要此操作。 然后单击 “确定” 按钮关闭对话框。
有关启用 Google API 访问 Google Play 开发人员帐户的详细信息,请参阅 developers.google.com 上的 入门。 有关设置 OAuth 许可屏幕的详细信息,请参阅 在 support.google.com 上设置 OAuth 许可屏幕。
通过 Visual Studio 上传应用
若要在 Visual Studio 中生成和签名应用,请执行以下操作:
在 Visual Studio 工具栏中,使用 调试目标 下拉列表选择 Android 模拟器,然后选择所选模拟器:
在 Visual Studio 工具栏中,使用 解决方案配置 下拉列表从调试配置更改为发布配置:
在 解决方案资源管理器中,右键单击 .NET MAUI 应用项目并选择 发布...:
存档管理器 将打开,Visual Studio 将开始存档应用捆绑包:
在 存档管理器中,存档成功完成后,请确保选择存档,然后选择“分发...” 按钮开始分发应用的过程:
将显示 分发 - 选择频道 对话框。
在 分发 - 选择频道 对话框中,选择 Google Play 按钮:
在 分发 - 签名标识 对话框中,选择在构建应用以通过 Google Play Console 分发时创建的签名标识,然后选择 “继续”按钮:
添加 Google Play 开发人员帐户详细信息
将 Google Play 开发人员帐户添加到 Visual Studio:
在 分发 - Google Play 帐户 对话框中,选择 + 按钮添加 Google Play 开发人员帐户详细信息:
在 注册 Google API 访问 对话框中,输入说明和 OAuth 客户端 ID 和客户端密码,然后单击 注册 按钮:
备注
通过帐户说明,可以注册多个 Google Play 开发人员帐户并将应用上传到不同的 Google Play 开发人员帐户。
Web 浏览器将打开。
在 Web 浏览器中,登录到 Google Play 开发人员帐户。 登录后,可能会显示一条消息,告知 Google 尚未验证该应用。 如果发生这种情况,请选择 继续 按钮:
在 Web 浏览器中,选择 “继续”按钮来授权应用:
Web 浏览器将收到验证码。
重要
不要关闭 Web 浏览器。
在 Visual Studio 的“分发 - Google Play 帐户”对话框中,选择“继续”:
选择要将应用上传到的轨道
若要选择将应用上传到的 Google Play 轨道,请执行以下步骤:
在 分发 - Google Play Track 对话框中,选择要将应用上传到的渠道。 Google Play 提供五个用于上传应用的曲目:
- 内部版本应用于快速分发应用,以便进行内部测试和质量保证检查。
- Alpha 应用于将应用的早期版本上传到一小部分测试人员。
- Beta 版应用于将应用的早期版本上传到更大的测试人员组。
- 生产环境应该被用来完整分发到 Google Play 商店。
- 自定义功能应用于通过电子邮件地址创建测试人员列表,以便与特定用户测试您的应用程序的预发行版本。
重要
如果未看到自定义曲目,请确保已在 Google Play Console 中为该曲目创建了一个版本。 有关详细信息,请参阅 support.google.com 上的 准备和发布版本。
选择要将应用上传到的轨道,然后选择“上传”按钮:
有关 Google Play 测试的详细信息,请参阅 support.google.com 上 设置开放、封闭或内部测试。
Visual Studio 将开始将应用发布到 Google Play。 在“签名密码 对话框中,输入为签名标识创建的密码,然后选择 确定 按钮:
Visual Studio 将对应用捆绑包进行签名,并将其上传到 Google Play。
重要
提交到 Google Play 的应用通常会经历评审过程。 有关详细信息,请参阅 为审核准备您的应用 和 在 support.google.com 上发布您的应用。