美文网首页
iOS客户端的优化

iOS客户端的优化

作者: 纳兰怮翌 | 来源:发表于2018-08-08 11:48 被阅读0次

在上次面试的时候,面试官就手机app的各种优化问了我几个问题,我个人觉得回答的不是很好,可能是好久没有去整理总结了,回答的时候就我做的项目中遇到的问题来回答的,没有正面的去回答要注意和规避什么,就这个问题我做个一个总结

1.iOS安装包优化

1.1 资源优化:
  • 资源优化:
    一般我们在做一个项目的时候都会牵涉到图标、图片、音视频等的导入,优秀的UI会帮我们优化和压缩这些图片,但是不是很优秀的UI做完就直接甩过来用,那么我们就需要把这些视图资源进行压缩,我一般喜欢用PPDuck来进行图片的压缩
  • 编译优化:
    去除符号信息(新版xcode默认),这个我不是很熟悉,如果熟悉的大佬可以说一下
  • 可执行文件优化:
    查看第三方库编译之后.o文件的大小,如果对大小影响很大的话可以考虑替换
    删除无用的代码,即删除一下项目中没有引用的类和方法,优化代码
1.2 内存优化:
  • 延迟加载视图和资源
  • 项目中最好做好缓存,像微博首页一样,一个列表展示的内容如果在没有变化或者修改之前加载本地的资源,一般我是用YYCache来进行本地的缓存
  • 自动释放池Autorelease pool降低内存,这个我暂时还在学习状态
  • 图片的缓存工作,比如我目前看来最好用的也是图片缓存最好的就是SDWebImage
1.3 内存优化:
  • 不要将view设置成透明,避免图层混合,消耗cpu资源
  • 尽量避免重写DrawRect、圆角、阴影等导致离屏渲染的效果
  • 如果一个vc或者view中视图的加载过多的话,优先使用frame布局,Autolayout这时候的性能低于frame
  • 合理处理线程,I/O操作不要在主线程执行
  • 预处理和延时加载:尽量提前加载可视化内容,优先级比较低的阔以延迟加载,提高用户的体验
  • 使用正确的API,如imageNamed:和imageWithContentsOfFile:的差异
  • TableView的优化 (解决UItableView卡的问题)
    • 复用单元格合适的重用标识reuseIdentifier,重用cell
    • 对于高度固定的cell直接设置rowHight,保证不必要的高度计算和调用。
    • 对于cell是动态行高,估算行高后缓存,我一般都在model里面去计算好了之后再赋值,也可以使用第三方
    • 单元格中的视图尽量不透明,单元格中尽量少用动画
    • 单元格图片异步加载
    • 滑动时不加载图片,停止滑动时开始加载
    • 使用runloop滑动来加载图片,在页面空闲时执行计算,滑动列表时不执行计算任务不然会影响用户体验
    • cell圆角处理,避免离屏渲染
    • 单元格中的内容在自定义cell类中的drawRect方法内自己绘制
    • 减少reloadData全部cell,只reloadRowsIndexPath

相关文章

  • ios - 收藏集 - 掘金

    天弘基金移动 App 客户端架构优化之路 - iOS - 掘金天弘基金移动App客户端架构优化之路 随着移动互联网...

  • iOS App 启动时间的优化初尝试

    不是很忙,快下班的时间,实践一波优化启动时间,发现还是点点效果的iOS启动时间优化今日头条iOS客户端启动速度优化...

  • 2020年11月第三周

    1、【性能优化】今日头条iOS客户端启动速度优化 https://www.jianshu.com/p/709647...

  • iOS启动优化文章汇总

    今日头条iOS客户端启动速度优化 WWDC 2016 Session笔记:App启动时间优化 Facebook i...

  • 应用架构文章

    Service Oriented 的 iOS 应用架构 新浪微博iOS客户端架构与优化之路 糯米移动组件架构演进之...

  • iOS客户端启动优化

    最近读了几篇文章,关于iOS启动优化,目前看,只有这一篇全面透彻一点。 今日头条iOS客户端启动速度优化 应用启动...

  • iOS客户端启动速度优化

    今日头条——iOS客户端启动速度优化 关注度——★★★★ 正文——众所周知,一款软件、一个客户端的使用,给人的体验...

  • iOS客户端的优化

    在上次面试的时候,面试官就手机app的各种优化问了我几个问题,我个人觉得回答的不是很好,可能是好久没有去整理总结了...

  • iOS 性能优化

    ios性能优化(一)ios性能优化(二)ios性能优化(三)

  • iOS 性能优化内存优化学习

    iOS APP渲染性能优化iOS性能优化之内存(memory)优化iOS内存和性能优化

网友评论

      本文标题:iOS客户端的优化

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