iOS开发 | 如何给第一版App添加自动更新功能?

iOS开发 | 如何给第一版App添加自动更新功能?_第1张图片
iu

遇到的问题

跳转到App store的某个App页面需要此App的 Apple ID(可以在iTunes Connect查看),而未上传构建版本的App是没有Apple ID的。所以如果想通过请求苹果API来获取线上版本号来与用户App版本号来对比是无法实现的。

解决方法

要实现这个功能需要后台配合,也就是说让后台控制更新:进入App时请求接口,根据后台返回的内容决定是否弹窗提示更新。

后台返回的字段主要有:

is_prompt_update (int): 是否提示更新:0-不提示,1-提示,
url (string): 下载地址,
is_force_update (string): 是否强制要求更新:0-不强制,1-强制
  • is_prompt_update决定前端是否弹窗提示更新
  • url是跳转的地址
  • is_force_update表示是否是强制更新,若强制更新则弹窗只有一个确定按钮,点击后跳转到App Store

检测更新的代码写到哪?

假如写到didFinishLaunchingWithOptions里面,后台要求的是强制更新,用户点击确定按钮后跳转到AppStore,这个时候用户又返回到APP,所谓的强制更新就失效了。所以我是把检测更新代码写到applicationDidBecomeActive方法里的。

后续工作

上传构建版本后,这个时候你就可以去iTunes Connect查看它的Apple ID了,然后把App store的URL告诉后台小伙伴,让他们配置,等第二版的App上架后,后台如果设置弹出更新,第一版的用户就能根据后台配置的URL跳转到指定的AppStore页面进行更新了。

补充说明:

后来发现我真的是多此一举了,在iTunes connect里新建APP后就有Apple id了,即使你还没有上传构建版本。

你可能感兴趣的:(iOS开发 | 如何给第一版App添加自动更新功能?)