iOS 11,iOS12掉帧导致界面卡顿bug

        在网上找了好久,没有遇到过这种问题的开发者吗?我在网上只是找到了有iOS的使用者说玩游戏的时候,iOS11 iOS12会掉帧,没有遇到问题,只能说您是幸运的,bug这种东西永远发现不完,永远解决不完,但是看到这个问题的同学们应该都是遇到掉帧这个问题了。

        bug发现背景:我们的商城APP在线上交付一些客户后,有极少数的客户会报这个bug,说我怎么滑动总感觉卡顿,然后我这边也确实复现了这个bug。

        bug的原因:因为我们公司是做平台类的,说白了我们的商城模块要兼容市面上大部分的商城APP的开发需求,但是肯定是一个APP,那肯定就是一套代码了,有些同学可能就会说了,商城不就那么些东西嘛,有什么好兼容的,那您细细听我说,我们商城首页总共最多可以支持13个section,每个section里边各有不同,我们会根据配置来画不同的界面,来加载不同的cell,说出来可能都不信,目前我们的商城首页用了31个cell,因为要根据配置来显示各种对应的cell,当然了,最多是13个section,是最多哦,所以可能是8个section,10个section等等,所以就苦了heightForRowAtIndexPath这个方法了,这个方法里边写了将近300行代码,然后还有section都是没有上拉加载的,其中一个section是加店铺的,没有做上限,客户加了100多个店铺,导致滑动的时候就感觉特别卡,肯定卡啊

        bug解决:我想着一直调用heightForRowAtIndexPath,然后里边有各种计算行高的方法,所以我就想着缓存了下高,把高度缓存下来,然后再看,根本没有我想象中的那么好,还是卡,真坑,为什么会这样,对了,网上最普遍的解决方案就是把预估行高设置为0,但是,但是。。。对吧,不说那么多,都懂的,没什么用的,即便有用,在这么复杂的业务场景里边肯定也不好用的,但是在那种简单的业务场景上,不会感觉到卡吧,最起码我在别的简单点的就没有客户反馈这种卡的情况。

     bug再探索:网上找,有苹果用户说玩游戏的时候iOS11 iOS12这种的会掉帧,作为一个开发者,我是不相信的,这么严重的bug,苹果会退出来系统吗?他们之前没测出来就发布吗?然后我赶紧试了试别的低版本的系统,iOS8,iOS10我都试了下,同样的业务场景,不会卡,好吧,好吧,但是这只是视觉上的,我还是用代码来证明高版本的系统确实有这样的问题,所以又写了个测试帧率的类,具体代码如下:

自己把这个label加到这个页面上滑动测试,好吧,在iOS10及以下的系统上基本不会掉帧,稳定在60,但是在高版本系统上很明显的,会掉到8FPS,10几FPS,不卡才怪呢,所以,所以,没办法解决吗?最终我这边的解决方案就是两个,每个section添加的条目都有个数限制,条目少,相对来说视觉上冲击不会这么大,在最下边的热门推荐行列就是采用上拉加载一次不要请求太多,通过上拉加载的方式来做,然后行高也做了缓存,最终算是解决了这个问题,还有就是xib,storyboard,怎么说呢,用的太多,也会消耗性能,但是有办法吗?需求紧,任务重,纯代码肯定会好很多,毕业前两年写了两年的纯代码,现在是写了两年的xib,没办法,商城类APP,要是一行行代码来写UI。。。

        结尾处有两点: 1.希望有同学有更好的建议可以提出来,咱们一块探讨 2.有时间的情况下尽量用纯代码来写,工程里边用大量的nib文件真的会好性能的。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,772评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,458评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,610评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,640评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,657评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,590评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,962评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,631评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,870评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,611评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,704评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,386评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,969评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,944评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,179评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,742评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,440评论 2 342

推荐阅读更多精彩内容