美文网首页
给iOS App瘦身

给iOS App瘦身

作者: 小蜗牛爬楼梯 | 来源:发表于2020-04-22 16:37 被阅读0次

最近打算给App瘦身,做一个简单的步骤整理。

编译选项

待补充

资源瘦身

  1. 删除无用图片,已做自定义,介绍文章,看上篇 删除无用图片工具定制
  2. 删除重复图片,用 SameCodeFinder 这是用来找相似代码的,也可以用来找一样的图片。重复图片以图标居多,解决方案看下一条。别的重复图片背后都是往往是一个可以下沉的一个公用组件。
  3. 如果是纯色图标,用如下方案在iOS中使用icon font 业内有现成的开源库IconFont 。这个库挺好的,规避了这种方案的缺点,
    1. 比如不会直接用Unicode,不知道字面含义,会有一个字典管理映射关系
    2. 字体生成UIImage,用label 代替总觉得有点怪怪的。
  4. 启动图可以优化,用一个storyboard 来代替 ,具体参看launch-screen-storyboard One piece of this is the ability to generate Storyboard-based Launch Images in Xcode 6 and iOS 8, leaving behind the notion of individual images for each device type出自
  5. 对现有图片按大小排个序,有些背景纯色图,或者渐变色图,可以用代码绘制,也可以合理利用 局部拉伸API
  6. 对非必须的资源,尽量从网络获取
  7. 如果非要放图,可以 合理利用 asset ,放一个pdf,减少设计工作量。不用每次都生成@2x@3x图。因为在编译过程中已经会自动生成。Another piece of this technology is the ability to generate vector-based images from a PDF at build-time in Xcode 6.。用这种方式确实可以瘦,可以自己下一个ThemeEngine 打开项目里面的Assets.car看看。用另一个工具cartool 也可以。
  8. 放在Images.xcassets的图片不能通过imagesWithContentsOfFile:来加载。(因为这个方法相当于是去mainBundle里面找图片,但是这些图片都被打包进了Assets.car文件)会占内存。那么我们会放bundle 里,这时候如果有追求,可以试试WebP格式的图片,以时间换空间。
  9. 如果还是使用png,记得压缩。我用的是imageoptim,推荐无损压缩,建议设计出图最好。

代码瘦身

  1. 查找相似代码文件
  2. 无用代码,大多数方案不能排除出runtime调用的类,会有误判。下面是业内常用的方案
方案 文档 代码
Link Map File 结合 Mac-O iOS微信安装包瘦身 检查每个类占用空间大小工具
clang 基于clang插件的一种iOS包大小瘦身方案 如何使用 Clang Plugin 找到项目中的无用代码 XcodeZombieCode
源码解析? fui跑通了这个方案,但是目前不支持动态调用
源码解析? 使用Swift3开发了个MacOS的程序可以检测出objc项目中无用方法,然后一键全部清理 SMCheckProject 难道我是时候重温一下swift了??

使用脚本

fui --path=/Users/yiche/Code/weichao/BitAutoPlus find >unusedclass.txt

grep BPNewsLib  unusedclass.txt | grep -v Cell | grep -v BPNBundle | grep -v BPTMediator | grep -v  Pods/Headers/  > news.txt

未完待续,会产出一个结合运行时判断工具。

相关文章

  • 给iOS App瘦身

    最近打算给App瘦身,做一个简单的步骤整理。 编译选项 待补充 资源瘦身 删除无用图片,已做自定义,介绍文章,看上...

  • 包含flutter的ios瘦身

    包含flutter的ios瘦身 类别瘦身前瘦身后导出的ipa133M110M上传App Store,testfli...

  • iOS App瘦身

    iOS App瘦身 关于app瘦身,你能想到什么? 删除无用类 删除无用方法 代码相似度分析 删除无用图片 无损压...

  • 安装包瘦身

    mark:iOS APP安装包瘦身实践 清理项目中不再使用的图片资源 当我们谈论iOS瘦身的时候,我们到底在谈论些...

  • iOS app 瘦身

    前言 你肯定不希望你辛辛苦苦的开发打包出来的安装包,非常大吧?那么怎么减小这个安装包的大小呢? 一、瘦身切入点 1...

  • iOS App 瘦身

    更多内容请挪步我的博客 图片资源删减 使用工具查找未引用资源 LSUnusedResources 比之前的 Unu...

  • iOS APP瘦身

    主要的一个问题是SDK体积过大。主要原因是各三方库开发人员为了兼容模拟器和真机的CPU真机在电脑上面跑的需要用到i...

  • iOS App 瘦身

    App瘦身 编译选项优化 Optimization Level 减小资源文件 推荐使用 iconfont 代替图片...

  • iOS APP瘦身

    一、资源 删除无效图片资源工具:https://github.com/tinymind/LSUnusedResou...

  • iOS App瘦身

    随着公司App版本不断迭代,安装包不断变大,如果APP达到150M的话,在4G或者蜂窝情况下,APP下载会收到限制...

网友评论

      本文标题:给iOS App瘦身

      本文链接:https://www.haomeiwen.com/subject/loqwihtx.html