很多时候我们想要去模仿市场上的一些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
xcode -》file -〉open。将下载下来的工程打开,大概就是这样
image.png
打开该工程后,就进入最重要的一步了,通过下面的步骤
product–>scheme–>edit scheme
运行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
如果缺少文件,那么进入文件夹,之后发现无法添加文件?
用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,仅限用于学习,大家自觉遵守法律道德,不要干坏事哈。
网友评论