正在加载今日诗词....
2 min read

iOS 应用提示指定更新版本, 解决 App Store 应用版本缓存问题

问题: 应用已经过审核, 服务端开启了版本更新功能, 但是用户点击时,跳转到 App Store 上面仍然是显示以前的旧版本 ????
iOS 应用提示指定更新版本, 解决 App Store 应用版本缓存问题

场景: 应用内增加了提示版本更新功能, 但是用户点击时,跳转到 App Store 上面仍然是显示以前的旧版本, 原因是苹果更新版本是有 CDN 缓存的

解决:

  1. 用户左右切换 App Store 商店底部的按钮, 多点大约10次左右, 再查看应用的版本
  2. 应用提供更新功能时, 指定版本更新应用的id (其中id为该app在APPStore的唯一标识 )

下载 App Store 历史版本

12.7 版本以后的 iTunes 已经移除了 应用 这一栏, 旧版本下载链接 iTunes 12.6.3 安装包
不过要注意的是,此版本在太高的系统上也是安装不了的

参考 iOS开发从appStore下载历史版本

  • Mac 打开 itunes
  • 搜索需要下载的 App
  • 点击下载
  • Charles 检测,下载时的网络请求
  • https 代理监听抓包 , 目标地址 : https://p28-buy.itunes.app.com , 查看buyProduct接口返回的contents , 里面有个版本号id数组. 按需选择想要的版本号 id.
  • Charles 拦截 buyProduct 的接口
  • 删除目前正在下载的 App
  • 再次点击下载
  • 当请求走到buyProduct时会自动停下, 这时候, 编辑请求 Edit Request, 替换本次需要下载的appExtVrsId 字段, 也就是上面想要的 历史版本号id, 然后继续执行请求 Excute , 当再次断点走到这里的时候, 确认当前请求的历史版本 id, 如果没有问题,直接执行 Excute .
  • 检测下载好的 历史版本包.

具体抓包的截图, 使用了上面链接内容中的
1435355-5bb8177ea89a2706-53ee1580-84dc-4f63-a4a8-c2272a6c177c-1535509337613-04669945

iOS 跳转到Appstore对应的应用