![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
性能优化
文章平均质量分 82
YLin1005
专注iOS产品开发,对互联网产品有着深刻的理解。
展开
-
iOS 保持界面流畅的技巧
这篇文章会非常详细的分析 iOS 界面构建中的各种性能问题以及对应的解决思路,同时给出一个开源的微博列表实现,通过实际的代码展示如何构建流畅的交互。Index演示项目屏幕显示图像的原理卡顿产生的原因和解决方案CPU 资源消耗原因和解决方案GPU 资源消耗原因和解决方案AsyncDisplayKitASDK 的由来ASDK 的资料ASDK转载 2016-09-14 11:44:25 · 202 阅读 · 0 评论 -
iOS 组件化方案探索
看了 Limboy(文章1 文章2) 和 Casa (文章) 对 iOS 组件化方案的讨论,写篇文章梳理下思路。首先我觉得”组件”在这里不太合适,因为按我理解组件是指比较小的功能块,这些组件不需要多少组件间通信,没什么依赖,也就不需要做什么其他处理,面向对象就能搞定。而这里提到的是较大粒度的业务功能,我们习惯称为”模块”。为了方便表述,下面模块和组件代表同一个意思,都是指较大粒度的业务转载 2016-09-12 13:28:07 · 233 阅读 · 0 评论 -
iOS瘦身之按需加载资源开发指南
按需加载资源基础按需加载资源是由App Store托管的内容,它和下载的app bundle是分开的。app请求一系列按需加载资源,而下载和存储资源是由操作系统来管理。这些资源可以是除可执行代码外,bundle支持的任何类型。支持类型的完整列表,请参阅附录a:按需加载的资源类型。 按需加载资源主要可以带来以下的几种好处:初始资源的延迟加载。app有一些资源是转载 2016-09-09 15:07:13 · 1083 阅读 · 0 评论 -
iOS微信安装包瘦身
前提微信经过多次版本迭代,产生不少冗余代码和无用资源。之前微信也没有很好的手段知道哪个模块增量多少。另外去年10月微信开始做ARC支持,目的是为了减少野指针带来的Crash,但代价是可执行文件增大20%左右。而苹果规定今年6月提交给Appstore的应用必须支持64位,32位和64位两个架构的存在使得可执行文件增加了一倍多。安装包大小优化迫在眉睫。Appstore安装包是由资源和可执行文件转载 2016-09-12 11:36:04 · 855 阅读 · 0 评论 -
微信读书 iOS 性能优化总结
微信读书作为一款阅读类的新产品,目前还处于快速迭代,不断尝试的过程中,性能问题也在业务的不断累积中逐渐体现出来。最近的 1.3.0 版本发布后,关于性能问题的用户反馈逐渐增多,为此,团队开始做一些针对性的性能问题优化。本文将从发现问题、解决问题和预防问题三个方面进行总结。如何发现性能问题不同于一般的 bug,性能问题因为并没有统一的标准,而且与用户的机器环境相关性较大,所以往往转载 2016-09-12 11:58:02 · 1292 阅读 · 0 评论 -
性能调优
在第一和第二部分,我们了解了Core Animation提供的关于绘制和动画的一些特性。Core Animation功能和性能都非常强大,但如果你对背后的原理不清楚的话也会降低效率。让它达到最优的状态是一门艺术。在这章中,我们将探究一些动画运行慢的原因,以及如何去修复这些问题。CPU VS GPU关于绘图和动画有两种处理的方式:CPU(中央处理器)和GPU(图形处理器)。在现代转载 2016-09-13 10:21:25 · 639 阅读 · 0 评论 -
iOS app性能优化的那些事(二)
这次我们来说说iOS app中滑动的那些事。iOS为了提高滑动的流畅感,特意在滑动的时候将runloop模式切换到UITrackingRunLoopMode,在这个过程中专心做跟滑动相关的工作,这也就是在滑动过程中为什么nstimer无法工作的原因,因为两个没在同一mode下面。但我们可能经常会遇到滑动不怎么流畅的情况,比如在项目中碰到在滑动tableview的时候不怎么顺畅,感觉有点不爽,即便是转载 2016-09-13 17:14:24 · 731 阅读 · 0 评论 -
iOS app性能优化的那些事(一)
iPhone上面的应用一直都是以流畅的操作体验而著称,但是由于之前开发人员把注意力更多的放在开发功能上面,比较少去考虑性能的问题,可能这其中涉及到objective-c,c++跟lua,优化起来相对复杂一些,导致应用在比如touch等较低端的产品上,光从启动到进入页面就花了将近一分钟的时间,页面之间的切换没有那种很流畅的感觉,内存也居高不下,比较影响应用的用户体验,所以很有必要进行一些优化,下面记转载 2016-09-13 17:32:15 · 317 阅读 · 0 评论 -
iOS离屏渲染优化(附DEMO)
本文授权转载,作者:seedante(简书)离屏渲染(Offscreen Render)objc.io出品的Getting Pixels onto the Screen的翻译版《绘制像素到屏幕上》应该是国内对离屏渲染这个概念推广力度最大的一篇文章了。文章里提到「直接将图层合成到帧的缓冲区中(在屏幕上)比先创建屏幕外缓冲区,然后渲染到纹理中,最后将结果渲染到帧的缓冲区中要廉价很多。因转载 2016-09-14 11:38:58 · 474 阅读 · 0 评论 -
WKWebview的那些坑之白屏问题
项目中用到WKWebview的童鞋有可能会遇到突然页面白屏问题,这个问题是因为内存不够了webview的进程被程序终止了,那我们如何监听到进程被终止的事件以及做何处理呢?(一)监听WKWebview进程终止iOS9时系统提供了一个监听方法- (void)webViewWebContentProcessDidTerminate:(WKWebView *)webView N原创 2017-03-26 21:20:11 · 15012 阅读 · 3 评论