利用 Charles Proxy 下载旧版本 iOS App
一、软件准备
1、旧版本 iTunes
1.IPSW Downloads:https://ipsw.me/
2.百度网盘链接:
https://pan.baidu.com/s/1PO9Z12o-rqZ_JG68zRqEnA 提取码:fe1v
2、抓包工具 Charles Proxy
1.Charles官网链接:https://www.charlesproxy.com/
2.百度网盘链接:
https://pan.baidu.com/s/1DD6AkUhEcD2LRWYqprUZUQ 提取码:e0p8
破解方法
1.安装后先打开Charles一次(Windows版可以忽略此步骤)
2.使用破解文件charles.jar,替换掉原文件夹里的charles.jar
Mac: /Applications/Charles.app/Contents/Java/charles.jar
Windows: C:\Program Files\Charles\lib\charles.jar
二、设置Charles Proxy
1、打开 Charles,选择菜单栏 -> Help -> SSL Proxying -> Install Charles Root Certificate。

2、在证书窗口中点击【安装证书】,点击【下一步】,然后选择【将所有的证书都放入下列存储】,再点【浏览】,选择【受信任的根证书颁发机构】,然后点【确定】,【下一步】和【完成】即可。

三、下载APP
1、打开iTunes,在App Store中搜索你想要下载的App,以百度贴吧为例。

2、点击下载或更新,等右上角出现箭头后删除下载(选中下载按2次Delete键即可删除)。

3、在Charles查找相关请求
找到http://pxx-buy.itunes.apple.com、url开头为 /WebObjects/MZBuy.woa 的请求。右侧面板中,Contents里面的数字是App的版本ID,XML Text里面的数字是App的所有历史版本ID。

4、给下载请求添加断点
选择http://pxx-buy.itunes.apple.com,点击右键选择【Breakpoints】,此时红点旁的灰色六边形会变为红色。

5、返回iTunes重新下载App,此时Charles会弹出窗口,在 Edit Request -> XML Test 中,需要修改版本ID【830816861】。

6、使用App历史版本查询工具,查询版本号对应的版本ID
在线查询苹果应用历史版本,https://tools.lancely.tech/apple/app-search

可以看到【6.9.6】后面的【812258441】就是对应的版本ID。

7、回到Charles中,替换掉对应的版本ID,再点击【Execute】继续。还会有一个弹窗出来,继续点击【Execute】即可。

在下载完成的时候还会有两次弹窗,依旧点击【Execute】即可。

此时可以看到iTunes开始下载App,可以看到6.9.6版本的App大小,相对于10.1.0版本的177M小了很多。

下载完成后,在【应用】的【资料库】中,右键点击App选择【显示简介】,可以查看到App的版本信息。

四、安装App
1、通过iTunes同步安装,需要登录Apple ID,对电脑进行授权,如果无法完成授权或无法同步安装,可以使用第三方助手安装。

2、使用第三方助手安装,如爱思助手,PP助手等。
在我的电脑中找到下好的安装包。

打开爱思助手,点击【下载中心】,将安装包拖入其中,再点击安装即可。

五、参考文章
1、5分钟教你安装IOS旧版APP,让我们回到最初的感觉...,https://zhuanlan.zhihu.com/p/42947889
2、利用 Charles Proxy 下载旧版本 iOS App,https://sspai.com/post/36122
利用 Charles Proxy 下载旧版本 iOS App的更多相关文章
- IOS如何下载旧版本应用APP
前言 文章相对来说比较复杂,特别是查找版本ID对应的步骤,这里推荐使用另一种方案,操作起来更简单. 本文介绍如何使用Workflow及Fiddler下载IOS旧版本APP应用. 实现原理 通过Work ...
- 对比使用Charles和Fiddler两个工具及利用Charles抓取https数据(App)
对比使用Charles和Fiddler两个工具及利用Charles抓取https数据(App) 实验目的:对比使用Charles和Fiddler两个工具 实验对象:车易通App,易销通App 实验结果 ...
- CRM2013版本 IOS APP 说明(IPhone、IPad)
CRM2013版本 IOS APP 说明(IPhone.IPad) IPhone版本 首页 CRM APP在登录时输入账号信息,可以进行首面.其首页显示内容可以在CRM后台设置. 系统默认显示:Pho ...
- 如何在苹果官网下载旧版本的Xcode
如何在苹果官网下载旧版本的Xcode 前段时间XcodeGhost事件让很多应用中招,不乏一些知名的互联网公司开发的应用.事件的起因是开发者使用了非官方的Xcode,这些Xcode带有xcodegho ...
- 下载旧版本的JDK
下载旧版本的JDK 有的时候我们需要去下载旧版本的JDK,但是进入Oracle官网,显示的总是新版的JDK,这里告诉大家怎么样去下载旧版本的JDK. 首先去JavaSE的 下载界面 拉到最下面,找到这 ...
- 下载旧版本的NDK
在官网找不到旧版本的下载地址,只能取巧了. 写该随笔的时候,NDK最新的版本是r12,见 https://developer.android.com/ndk/downloads/index.html# ...
- 解决 Android SDK Manager不能下载旧版本的sdk的问题
解决无法使用Android SDK Manager下载SDK开发包的解决办法. 当我们在官网下载google的集成ADT,也就是adt-bundle-linux-x86.zip开发包,进行解压, 打 ...
- 如何下载旧版本的MySQL
可能存在这样的场景,比如一些老系统需要使用MySQL 5.5版本才能运行,其余的不行. 1.登录下载站点 https://dev.mysql.com/downloads/mysql/ 此时的最新版本为 ...
- 教你如何快速下载旧版本的Firefox浏览器
http://blog.csdn.net/gh0st007/article/details/18937421 更新后的ff使用过程中经常出现卡顿的现象,之前并没有出现,于是想找老版本的ff安装一下.发 ...
随机推荐
- pandas(二)
层级索引: index=[('a',2010),('b',2011),('c',2010'),('a',2012),('e',2010),('f',2011)] age=[18,17,18,16,18 ...
- Mybatis插入记录并返回MySQL自增主键
mapper Integer insertConfigAndGetId(CrawlerConfig config); xml <insert id="insertConfigAndGe ...
- JAVA学习笔记 (okHttp3的用法)
最近的项目中有个接口是返回文件流数据,根据我们这边一个验签的插件,我发现里面有okHttpClient提供了Call.Factory,所以就学习了下okHttp3的用法. 1.概述 okhttp是一个 ...
- python函数带()与否
一.不带括号时,调用的是这个函数本身 ,是整个函数体,是一个函数对象,不须等该函数执行完成二.带括号(参数或者无参),调用的是函数的执行结果,须等该函数执行完成的结果 进程和线程的target=fun ...
- jenkins深入学习
一.jenkins深入学习 一.jenkins项目配置 1.Jenkins Gitlab持续集成打包平台搭建 http://blog.csdn.net/zgzhaobo/article/details ...
- 接口测试工具-tamper data
1.火狐浏览器插件 安装:1)打开火狐浏览器-alt键-附加组件-搜索tamper data-安装-重启火狐浏览器-在工具下打开tamper data 使用:start tamper 示例:http: ...
- 音乐类产品——“网易云音乐”app交互原型模板(免费使用)
网易云音乐虽是一款音乐app,但有人说它也是社交界的一股清流以及一匹黑马.音乐带给人的感染,激发着很多人在这里表达着他们的情绪和心声.网易云音乐上的真实用户点评,不仅被印在地铁的广告牌上,还在朋友圈频 ...
- python点点滴滴
python点点滴滴 1 self 使用python编程实现邮箱登录时,遇到使用self的情况,在此做简要记录. 参考链接: https://sjolzy.cn/Why-should-self-Pyt ...
- C语言--关于第0次作业
你对网络专业或者计算机专业了解是怎样? 答:我认为网络专业或者计算机专业是网络管理.软件开发.程序设计等一些高等企业就业的基础知识.以及涉及到环境开发等的专业领域.知道它很难,但是社会对它的需求很高. ...
- git使用手册整理
-------------------20181217------------------- git使用:在gitbash 下初始化用户: $ git config --global user.nam ...