iOS性能优化技术

小小总结,后续继续跟进。

1. 提高应用性能的几个开发细节

  * 尽量避免使用constraint实现动画

  * 尽量避免使用数组的删除操作

  * 尽量避免使用 NSString::stringWithFormat

  * 尽量避免使用 NSImage::imageWithContentOfFile

  * 线程需要1KB的内核空间和最少16KB的栈空间

  * 一切可能耗时的操作,都不要放在主线程

  * 及时清除垃圾(MRC、ARC)像一些c的函数,变量等代码块

2. 图片加载操作 -- 影响移动应用性能的重要因素之一

  ImageCacheResize EGOImageLoading AFNetWorking HjCahce SDWebImage
优 点  SDWebImage+UIImage+Resize 自定义的EGOImageView 异步加载,缓存到内存 异步加载,二级缓存 二级缓存,下载优化,GCD,支持ARC,支持ARM64
缺 点 不再维护 不支持ARC,不再维护 不能将图片缓存到本地,依赖NSCache 接口复杂,不再维护 资源占用

3. 移动应用性能的罪魁祸首-10

  * 连接超时

  * 网络劫持

  * 闪退

  * 交互性能差

  * 卡顿

  * CPU使用频率问题

  * 崩溃

  * 内存泄漏

  * 黑白屏

  * 不良接口

时间: 2024-08-01 12:06:55

iOS性能优化技术的相关文章

IOS 性能优化的建议和技巧

IOS 性能优化的建议和技巧 本文来自iOS Tutorial Team 的 Marcelo Fabri,他是Movile的一名 iOS 程序员.这是他的个人网站:http://www.marcelofabri.com/,你还可以在Twitter上关注@marcelofabri_. 性能对 iOS 应用的开发尤其重要,如果你的应用失去反应或者很慢,失望的用户会把他们的失望写满App Store的评论.然而由于iOS设备的限制,有时搞好性能是一件难事.开发过程中你会有很多需要注意的事项,你也很容易

【腾讯Bugly干货分享】微信读书iOS性能优化

本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/578c93ca9644bd524bfcabe8 "8小时内拼工作,8小时外拼成长"这是大家共同的理想.除了每天忙于工作外,我们都希望能更多地区吸收领域内的新知识与新技能,从而走向人生巅峰. Dev Club 是一个交流移动开发技术,结交朋友,扩展人脉的社群,成员都是经过审核的移动开发工程师.每周都会举行嘉宾分享,话题讨论等活动. 上一期我们邀请了腾讯SNG工程师&qu

iOS性能优化之“优化总体原则”(性能优化很重要,为什么你们都没有用?)

笔者由于在iOS开发过程中做过一些优化的工作,对iOS性能优化有一些粗浅的认识,一直想把自己这些经验,简单总结一下. 作为整个系列的第一篇,我打算针对iOS的优化中的一些总体原则做一些总结.因为我觉得无论列表流畅度优化也好.启动时间优化也好还是说其他方面的优化,都有一些共性的原则,只有掌握了这些总体性的原则,才能够更好的做优化,给我们具体的优化任务指明方向,让我们少绕弯路.后面如果时间允许,我可能会写一些关于列表流畅度.启动时间和内存优化等方面的文章. 作为一个开发者,有一个学习的氛围跟一个交流

iOS性能优化:Instruments使用实战

iOS性能优化:Instruments使用实战 最近采用Instruments 来分析整个应用程序的性能.发现很多有意思的点,以及性能优化和一些分析性能消耗的技巧,小结如下. Instruments使用技巧 关于Instruments官方有一个很有用的用户使用Guide,当然如果不习惯官方英文可以在这里找到中文本翻译版本PDF参阅.Instruments 确实是一个很强大的工具,用它来收集关于一个或多个系统进程的性能和行为的数据极为方便,并能及时跟踪随着时间产生的数据.还可以广泛收集不同类型的数

iOS性能优化小结

iOS性能优化分析 首先要熟悉几个概念 PNG 和 JPG 的区别是什么? png格式的图片有alpha通道,jpeg则没有.png无损压缩,jpeg允许你选择0-100%的压缩质量.如果需要alpha通道(透明),就只能用png格式. CPU 和 GPU 如果想看看两者的区别,先得了解iOS视图背后的层级结构原理  上图中的最底下一行是硬件层,由GPU和CPU组成. 我们经常说到的硬件加速其实是指OpenGL,Core Animation/UIKit基于GPU之上对计算机图形合成以及绘制的实现

iOS性能优化技巧

iOS性能优化技巧 通过静态 Analyze 工具,以及运行时 Profile 工具分析性能瓶颈,并进行性能优化.结合本人在开发中遇到的问题,可以从以下几个方面进行性能优化. 一.view优化 1.不透明的View 设置为opaque. 2.根据实际情况重用.延迟加载或预加载View. 3.减少subviews数量,定制复杂cell使用drawRect.尽量使用drawRect而不是layoutSubView. 4.不直接调用drawRect. layoutSubviews方法.万不得已时可以用

移动应用性能优化技术[摘抄1]

http://www.51cto.com/ http://mobile.51cto.com/exp/apm/ 测试的执行过程是被监控的,在所有针对不同用户负载的应用程序响应被测试完之后,其结果也会对比事先定义好的服务水平协议得到全面的分析.性能测试工具可提供问题诊断功能,帮你找出根本原因从而快速解决. 七.移动应用性能优化技术 移动应用的性能优化技术取决于特定的应用极其瓶颈特性.我们在这里分享几个通用的优化移动应用性能的技巧: 减少客户端到服务器的HTTP请求数量,可以缩短页面加载时间 将Jav

iOS性能优化之Leaks动态分析

iOS性能优化之Leaks动态分析 Instruments-Leaks有很多跟踪模块可以动态分析和跟踪内存, CPU 和文件系统(因为是动态分析 所以必须运行才能打开). 具体使用 在XCode Open菜单下,点击Leaks 对App进行动态分析(快捷键CMD + i) 或者直接在工程中选择调试导航 在右侧点击Profile in instruments 检测图: Separate by Thread:按线程分开做分析,这样更容易揪出那些吃资源的问题线程.特别是对于主线程,它要处理和渲染所有的

iOS 性能优化收集

iOS 性能调试 instrument Instrument Instrument之Core Animation工具 避免图层混合 ①.确保控件的opaque属性设置为true,确保backgroundColor和父视图颜色一致且不透明: ②.如无特殊需要,不要设置低于1的alpha值: ③.确保UIImage没有alpha通道: 避免临时转换 ①.确保图片大小和frame一致,不要在滑动时缩放图片: ②.确保图片颜色格式被GPU支持,避免劳烦CPU转换: 慎用离屏渲染 ①.绝大多数时候离屏渲染