In-App 更新

使您的测试人员能够轻松地及时了解最新版本。 集成 App Center SDK (和适用于 iOSAndroidXamarin 的分发模块) ,自动为新版本启用应用内通知。 完成后,通过 App Center 的所有 未来发布 都将对每个测试人员触发应用内通知,以便快速升级到最新版本。

重要

目前,In-App 更新存在一些限制:

  1. 如果或中没有更改,则不会提示 Android 设备进行更新 versionCode versionName
  2. 对于 iOS 公共应用内更新,如果使用的是专用轨迹,则 Apple 有一个必须解除的默认对话框。 公共流不需要登录名。
  3. In-App 更新在 Windows/UWP 应用程序上不起作用。

公用 In-App 更新

若要启用公共应用内更新,请创建一个 公共通讯组 ,并使用 App Center SDK 分发发布。 一旦您的测试人员安装了该应用程序,新版本公开上市后,就会发出警报。

与应用程序存储的兼容性

Android

如果从 Google Play 或其他存储而不是 App Center 中安装应用程序,则将禁用检查是否有新版本。

即使在运行时未使用,Google 也可将应用内更新代码视为恶意行为。 建议先从应用程序中去除此代码,再将其提交到 Google Play。 为简化此操作,我们提供了版本的 App Center 将 SDK 与用作存根 Api 一起发布,因此,只需进行依赖关系交换即可。 可以在 AndroidXamarinUnity 页上找到详细说明。

iOS

如果应用程序是从应用程序存储或 TestFlight 安装的,则应用程序内更新不可用,并且将禁用检查是否有新版本。

常见问题解答

  1. 为什么测试人员需要重复进行身份验证?
  • App Center SDK 使用设备的默认浏览器来存储 cookie。 在以下情况下,SDK 会要求重新进行身份验证:
    • 测试人员从设备的默认浏览器中清除了 cookie。
    • 测试人员禁用了设备默认浏览器的 cookie。
    • 测试人员在打开应用后关闭了第一个身份验证窗口。
    • 用于初始化 SDK 的应用密码与 App Center web 门户上列出的密钥不同。
  1. 为什么当发布新版本的应用时,测试人员看不到应用内更新消息?
  • 多个方案可能导致测试人员无法获取应用程序内更新通知:
    • App Center SDK 分发功能已禁用。 在应用启动时,必须启用和初始化 App Center SDK 分发功能。 如果测试人员安装了已禁用分发功能的版本,则需要手动安装最新版本。
    • 已禁用自动检查更新。 如果禁用 "自动检查更新",则该应用在启动时不会检查是否有新版本。 调用 checkForUpdate 时,会发生检查。
    • 对于新版本,应用的发布版本不正确
      • 对于 Android:递增版本代码。
      • 对于 iOS:递增 CFBundleShortVersionString 并符合语义版本标准
  1. 测试人员为什么会看到 "已禁用应用程序更新" 消息?
  • 多个方案可以使 App Center SDK 显示此消息:
    • 应用未从 App Center 安装。
    • 安装程序的版本未通过 App Center 释放,或者 App Center 上已删除发布。
    • SDK 中使用的应用密码不正确。 若要获取应用程序密钥,请转到应用的 "设置" 页,单击右上角的三向竖点,然后复制应用程序密钥。