客户端第一个命令 都是 告诉服务器 我的版本号 客户 id 。 服务器给的结果都是 1. 可以继续 你去连这个服务器 pre 2. 可以继续 你去练这个服务器 pro
服务器 可以根据这个客户 id 做灰度,简单的 比如 id <10000 的 是你们测试的 id, 那么你们就可以用自己的 id 在 pre 服务上测,大部分人都继续用 pro 的。 等测试好了 把 pro 升级,把服务器的的 灰度关掉, 服务器的结果就变成 1. 如果不是新版本 就必须升级。 2. 已经是新版本 请走 pro.
举个例子,为什么说强制更新尽量少用。 你们的客户公司,老板正在出差,网络状况不太好。这个时候,他需要审核一点资料啥的。然后他点开了 App,很不巧,他被灰度到了,如果不更新就不能使用。然而他的网络情况让他下了好几遍新版本也没有下载成功。 很显然,他不一定要新版才能完成的工作,却因为强制升级而不能完成了。 对于 to B 来说,需要更多考虑用户体验,而不需要额外的营销手段留住客户。所以需要尽可能考虑 B 端客户的各种情况,能让客户正常使用是最重要的。 比如弱网,异地 /跨国漫游……这类 to C 产品不用太关心的因素。