如何删除iOS工程里未使用的图片
一个普通的iOS工程经历了多次改版之后,往往就会存在许多废弃不用的图片没有删除掉,它们的存在会使iOS工程的体积大大增加。如果清除掉这些图片,就能让ipa包的体积大大缩减,起到瘦身的效果。一个普通的iOS工程会有大约三分之一的图片是未使用的,所以清理这些图片还是非常有必要的。
iOS项目的目录结构
一般情况下,iOS项目的目录结构大致如下图所示:
```
├─ Classes
│ ├─ Model
│ ├─ View
│ └─ Controller
├─ Resources
│ ├─ Images.xcassets
│ │ ├─
│ │ ├─
│ │ └─ ...
│ └─ ...
└─ ...
```
安装Silver Searcher
首先我们要安装Silver Searcher。在Linux系统里可以使用ack-grep来进行搜索内容,但是mac系统里并没有ack-grep怎么办呢?其实我们可以在mac系统中安装Silver Searcher来进行搜索字符串,使用的方法和ack-grep相似,而且搜索的速度比ack-grep还要快。方法是打开终端,输入以下命令安装:
```
brew install the_silver_searcher
```
搜索未使用的图片
iOS的图片分为标清和高清两种,所以搜索时就要先把"@2x"去掉。因为高清的图片名字是以"@2x"结尾的,一般的代码里并不会写上"@2x"。如果搜索到的结果为空字符串,说明代码里并没有引用该图片。
保存未使用的图片名
获取到的所有未使用的图片名,经过排序后保存到一个txt文件里。为什么把文件名保存早一个文本文档里而不是直接执行代码呢?目的为了先确认一下是否有误搜到的图片。比如搜到了这几张未使用的图片:
```
```
手动确认图片是否被使用
看下面代码可以知道这几个图片实际上是用到了的,可是搜索到的未使用图片却有它们。所以要看文本里的图片名有没有含有连续数字,有的话要再手动搜索一下代码,进一步确定图片是否被使用。
删除未使用的图片
接下来我们就可以用Python代码读取txt文档的内容,将里面的图片删掉。可以使用os模块遍历图片文件夹,并通过文件名判断是否应该删除该图片。在删除之前,最好备份一份未使用图片的文件夹,在删除后可以对比一下文件夹大小,确保删除操作正确无误。
以上是如何删除iOS工程里未使用的图片的方法,希望对你有所帮助。清理未使用的图片可以有效减小iOS工程的体积,提高应用的性能和加载速度。记得在操作前备份重要文件,以免不小心删除了需要使用的图片。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。