2

利用Charles通过iTunes下载旧版本的App

看过一篇关于使用fiddler工具进行抓包,通过iTunes下载旧版本App的文章,但是这是windows平台下的。文章链接。如果是mac平台呢?

fiddler只有windows版本,这只是一个抓包工具。那么mac下,可以通过Charles进行抓包拦截,然后下载。

步骤:

  1. 打开Charles,注意:相关配置需要弄好,比如root证书什么的

  2. 打开iTunes,挑选任意一个app,进行下载,但app开始下载时,可以选择暂停,返回Charles查看

  3. Charles一大堆数据上,你会发现一个pathWebObjects/MZBuy.woa/wa/buyProduct的链接,右键对其进行添加breakpoints。,点击content,查看其XML内容。注意:此处需要右键 -> Enable SSL Proxying

  4. 在上述内容中,你需要找到一个softwareVersionExternalIdentifiers的字段,其中数组array所包含的就是该app的版本记录吧。

  5. 这时候,可以选择对该链接进行保存,事实上主要是为了记住这些版本记录。如下图。
    图片描述

  6. 删除iTunes中正在下载的app,重新下载该app。此时,Charles中的breakpoints将被激活,前往Charles修改

  7. Charles中,此时看到所打断点的内容。Edit Request->XML Text。会看到appExtVrsId字段。其中的内容就是上述5.中看到的softwareVersionExternalIdentifiers的内容。此时需要将其替换成 任何一个你想要的版本,也就是其他的id。一个版本可能会对应多个id,所以具体还是得逐个尝试才能得到相应的版本。一般来说,appExtVrsId中默认的值都是最新版本的id。修改完毕后,Execute
    图片描述

  8. 返回iTunes查看当前下载,等候完毕。完毕。如果提示出现下载插图什么的乱七八糟Error,那么就重新下载,试多几次就好了。

其实,说到底就是利用Charles,进行拦截修改,进而达成目标。


六叔
165 声望12 粉丝

男女只是传宗接代,男男女女才是真爱!