Skip to content

iOS11开发新特性之官方灰度方案:Phased Release for Automatic Updates #19

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
ChenYilong opened this issue Sep 21, 2017 · 1 comment
Labels

Comments

@ChenYilong
Copy link
Owner

iOS官方灰度方案:Phased Release for Automatic Updates

iTunes Connect v2 宣布支持:Phased Release 功能,全称 Phased Release for Automatic Updates (阶段性自动更新发布),

在提交审核通过后,上架当天为第一天,之后灰度比例依次递增:

天数 百分比
第一天 1%
第二天 2%
第三天 5%
第四天 10%
第五天 20%
第六天 50%
第七天 100%

其中:

灰度占比 = (推送量) /(打开了自动更新应用的用户)

注意分母并非:总安装量。

这个方案类似于 iOS 系统的每个版本的发布更新,iOS 系统每次更新也并不是全部地区更新,有时也是增量更新。

值得注意的是,虽然 Phased Release 可以起到“灰度”作用,但实际提交的却是一个”正式版本“,只是提交审核的时候选择 Release update over 7-day period using Phased Release,所以如果这个版本出了严重问题,还是需要升级版本号重新提交。

有坑的地方在于下面的这些原因会导致 1%、2% 的灰度比例很难控制:

  • 如果用户手动打开了 App Store 检查更新,是能检查到灰度版本的,
  • 通过搜索应用名称,也就是能下载到最新的版本的,

如果这个灰度有严重 bug,APPLE 提供了暂停灰度发布的功能来控制影响,但是这个暂停最多30天,超过时间苹果会自动转为全量,并且用户手动检查更新、手动下载还是能下载到有问题的版本。

该机制的缺点与建议:

  • 无法控制灰度用户上限:与 TestFlight 相比,缺点较为明显,鉴于官方灰度占比的计算方法,实际操作过程中,是很难把握真实的升级数量,无法升级用户的上限。如果对灰度上限有要求,建议一旦开启该机制,时刻关注版本占比,及时暂停 Phased Release,仅靠手动更新的量进行灰度,或者采用 TestFlight 。
  • 无法撤销灰度版本:Phased Release 虽然一定程度上降低了发布风险,但作用并不满足预期,更不能降低版本发布的质量标准,一旦 APP 出现较大 bug,无法撤销灰度版本,只能发布更新,依然要考虑审核周期,以及用户升级周期。

下面是对该功能官方FQA 的翻译:

  1. 什么是阶段性自动更新发布?

在iTunes Connect,你可以开启Phased Release for Automatic Updates,那就意味着,你发布了一个阶段性更新的iOS应用。在阶段性更新发布版本中,7天之内,你的应用会以百分比的形式来增量更新。在阶段性发布的版本期间内,你的应用会每天都显示在iTunes Connect上,并且部分用户会完成更新。当然,所有的已安装过你的应用的用户也可以选择App Store手动更新,新用户会一直都能看到你最近发布的“可供销售”的版本。 如果你发现在阶段性更新过程中,你的应用有某些缺陷,你可以在任何时间内暂停阶段性更新,这个时间持续30天,不管暂停有多少次。

  1. 如何阶段性发布我的应用?

阶段性发布一个更新版本:
在iTunes Connect首页,点击我的应用,然后选择一个应用;
在左边的列表,点击你想要提交的版本的应用;
在Phaed Release for Automatic Updates区域,选择 Release update over a 7-day period.
点击右上角保存。

  1. 在阶段性发布中,成百分比例的用户是如何每天完成自动更新?

自动更新打开时是任意选择的,这基于用户的Apple ID,而不是用户的设备。如果一个用户有多个设备,每个设备都开启了自动更新,那么当一个应用在阶段性发布更新时, 他们会在同一时间段内收到自动更新的提示。

  1. 在阶段性发布中,我能每天为用户设置自动更新的百分比值吗?
    不能,因为在阶段性发布中,百分比的用户每天完成自动更新的图表如下显示,当然也会显示在iTunes Connect上
天数 百分比
第一天 1%
第二天 2%
第三天 5%
第四天 10%
第五天 20%
第六天 50%
第七天 100%
  1. 我能针对阶段性发布的应用进行特定的统计数据吗?
    不能,因为不可能针对指定统计数据的用户进行,如年龄,性别,地区,设备信息,系统系统,设备类型的查看。用户的更新是随机选择的。

  2. 在应用阶段性发布中,用户完成了自动更新会被通知到吗?

    不会被通知到

  3. 我可以取消我的应用版本的阶段性更新吗?
    如果你想停止发布阶段性的应用,并且 发布给所有已打开自动更新的用户,你可以这么做,在右上角选择你的应用对应的版本,然后点击选择 Release to All Users。
    如果在版本更新中,你发现了应用有bug,你可以在任何时候暂停阶段性发布,一共可以持续30天,30天内不管你暂停了多少次;然后提交一个新的版本。
    对于已经是 Ready for Sale (可供销售) 的版本来说,不可能撤回版本更新,或者防止用户手动更新。

  4. 当我的应用还在阶段性发布暂停中,并且已经超过了30天的期限,会发生什么?
    当你的应用更新暂停超过30天后,应用发布会在当天从暂停中恢复,并且不能再暂停你的应用发布了。

@chaoxcheng
Copy link

可以考虑进行企业包灰度分发

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants