iOS 获取APP的ipa包并解析.car文件获取完整内资源文件

很多时候我们想要去模仿市场上的一些app,那就需要app里面的图片资源,如何获取呢?

这里以iOS的app为例。

首先mac电脑端下载一个软件,在App Store搜索apple configurator 2


image.png

点击下载,安装成功之后打开,usb连接上手机,如图表示连接成功

image.png

接下来是点击添加,然后选择app


image.png

这个时候由于未登陆,点击登陆


image.png

输入密码成功后,可以看到手机右上角有了红色的泡泡,证明登陆成功


image.png

双进手机泡泡查看详细信息,如下app处,查找到我们要下载的app,如图是手机已经安装的,这个安装和未安装都不影响。

接下来进入正题,依旧是添加选择app,然后搜索需要的app,选中后,点击添加


image.png

未安装的先安装一次,然后再重复上面的添加


image.png

弹出已存在的警告的时候,不要进行任何操作,在本地去找ipa包文件,Finder-- 前往文件夹 – copy下面地址,路径如下
~/Library/Group Containers/K36BKF7T3D.group.com.apple.configurator/Library/Caches/Assets/TemporaryItems/MobileApps/

或者文件夹直接前往~/Library/Group Containers/

image.png

改ipa文件后缀为.zip,然后解压文件,右键,显示包内容,即可获取到ipa包内文件资源


image.png

选择归档工具解压缩


image.png

最后我们就能得到一个文件夹,点击该文件夹,选择Payload文件,然后我们会看到如下的文件


image.png

右键显示包内容


image.png
image.png

进入到资源文件文件夹中,另我大失所望的是居然没有我想要的所有图片资源,只要很少的一些,比如logo和引导页面的图片,但是我却发现了一个我们经常用的,那就是Assets.xcassets打包后生成的Assets.car文件,由于苹果公司不提供直接查看Assets.car的工具,所以查了下资料,很快就找到了cartool这么一个工具

通过cartool工具,我们便能解析出图片资源
下载方法:通过终端
git clone https://github.com/steventroughtonsmith/cartool

image.png

xcode -》file -〉open。将下载下来的工程打开,大概就是这样


image.png

打开该工程后,就进入最重要的一步了,通过下面的步骤
product–>scheme–>edit scheme

image.png
image.png
image.png

运行xcode发现路径存在空格,无法成功编译。

image.png

这个项目是五年前的,基本没人维护,而且是xcode8。自己修复也不懂。如有了解的希望不吝告知。

那么只能换一个工具来解析car文件了,在cartool的issue发现有人提到了另一个工具:
Swift5: https://github.com/iHTCboy/acextract

同样是git clone https://github.com/iHTCboy/acextract
然后xcode打开,首先同样的是指定要解析的car文件,以及输出的文件目录了

image.png

image.png

运行,发现又出错了??


image.png

查看信息是说缺少文件,


image.png

点击左侧文件夹,正常情况下图中缺少的文件本来是红色的,或者没有对应的文件夹,图为我已经添加之后的情况。
image.png

如果缺少文件,那么进入文件夹,之后发现无法添加文件?
用touch命令吧

cd /Users/zby0520/myApp/acextract/CommandLine/CommandLine 
touch Option.swift
touch CommandLineTool.swift
touch StringExtensions.swift
touch Info.plist

文件照搬https://github.com/iHTCboy/CommandLine/tree/b8209dc17ac1dd0f97ebfbd6a77a0633552626ca/CommandLine里面的即可

再次build发现不报错了,解析成功。


image.png

打开输出目录,发现已成功输出


image.png

接下来终于可以愉快的敲代码了。

以上教程不针对任何app,仅限用于学习,大家自觉遵守法律道德,不要干坏事哈。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容