iOS APP性能优化

返回上级目录:ios面试题和知识点整理

1.减少app所占内存(体积)

1.去掉不必要的库,类和代码

如下图,在使用高德地图的时候,如果用不到导航,就不要集成导航的SDK: AMapNavi(118M)
在这里插入图片描述

2. 可以提高性能的做法

1.对象的创建

  • 尽量使用轻量对象,如能用CALayer的时候尽量不用UIView
  • 敏感位置能不用XIB尽量使用纯代码手写
  • 推迟同一时间创建对象,使用懒加载在需要使用的时候创建对象

2.布局计算

  • UITableView布局计算,异步进行计算布局并缓存下来,当复用Cell时候直接调用缓存数据

3.图像生成

  • CALayer的border,圆角,阴影,遮罩,CAShapLayer的矢量图形显示,通常会触发离屏渲染。
  • 要UI来处理图片,避免使用圆角等

4.图片预加载和异步绘制

5.使用frame布局来替换约束布局

6.在设置CGRect时能只用Int的就不用用CGFloat和Double

3.相关概念

  • 离屏渲染:iOS离屏渲染
  • CPU(中央处理器)
    对象的创建和销毁,对象属性的调整、布局计算、文本的计算和排版、图片格式转码和解码、图像的绘制(Core Graphics)
  • GPU(图形处理器)
    纹理的渲染(OpenGL)
extension CGRect {

    public static var zero: CGRect { get }

    public init(x: CGFloat, y: CGFloat, width: CGFloat, height: CGFloat)

    public init(x: Double, y: Double, width: Double, height: Double)

    public init(x: Int, y: Int, width: Int, height: Int)

参考博客:

iOS 性能优化的探索
iOS 性能优化之启动优化

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页