我们有时觉得某个App快,某个App运行起来则很慢,这个过程分解开来就是:某个App执行某项任务,在某种网络环境下,被用户感觉到速度快或慢。三个关键词:任务,网络环境,用户感知。
任务:
1、提高任务执行速度
优化App代码质量,这个技术上的思路比较常见。
2、后台处理任务
最近使用新浪微博Windows Phone客户端时感受强烈,每次发出微博后可以继续刷微博,过段状态栏会显示发送成功或失败的提示。处理任务的时间并没有变化,使用体验却顺畅许多。
3、提前执行任务
Instagram在你拍完照片填写照片说明、分享信息等时就开始上传了,等你点击“完成”时,照片可能都已经上传好了。仅仅照片说明、分享信息等的上传,时间相对短很多。用户的感觉就是Instagram比别的App快,分享照片很简单!
微信查看他人朋友圈的照片,某张照片加载完成后,会自动加载该照片的前一张和后两张,这是对用户行为的预测。
4、提前显示任务结果
发iMessage时,点击“发送”后,输入的内容就会移入对话列表中,此时导航栏上还在显示着发送进度。一段时间后,如果发送失败,所发送消息右侧会显示红色的叹号,点击可再发送一次。
Instagram中点“赞”时,“赞”按钮会立即变为“赞了”,而实际此时赞的请求正在进行。
微信更极端,没有网络时朋友圈发的照片也会进入内容列表中,但实际是没有发出去的,短时间内微信会在有网络时自动上传,长时间的话,微信会提示“照片发送失败”,可轻触以再次发送。
5、细化为多个任务
大多数App采取的分页加载数据就是一个例子,像新浪微博“首页”每次加载50条微博,“消息”中每次加载20条消息。
6、降低任务难度
随享中查看微博图片,先显示质量稍低的图片,点击“原图”才会加载原始图片。
网络环境:
1、不同网络环境不同处理
新浪微博根据网络,在Wi-Fi下大图模式,在3G/2G网络下小图模式。
2、避免陷入3G/2G网络环境
视频、音乐类App的离线功能,豌豆荚的追剧功能。
3、与运营商合作推出类定向流量包
搜狐视频的联通15元每月6G流量包,豆瓣FM的联通免流量包月服务,微信和广东联通推出“微信沃卡”等。
用户感知:
1、及时反馈
用户不了解情况,就会更加着急。
2、分步加载
网易新闻查看新闻详情时,先加载文章标题和内容,再加载配图。
3、先显示部分元素
已有布局,打开iPhone备忘录,先显示导航栏和列表分割线。
已知内容,新浪微博从列表进入某条微博正文,先显示列表页已知的头像、昵称、时间、微博内容等。
4、利用缓存
让人感觉快,新浪微博每次进入,“首页”都显示上次刷新时的微博。
实际确实更快,微信在没网的时候也可以访问之前已经访问过的页面。
5、页面转场、动画效果
页面转场、动画转场效果是消耗时间的,这个时间会被用来处理任务。
6、减少系统默认loading动画的使用
看着就烦,现在携程、美团等App都已经自定义了。
7、有趣、酷的元素
转移用户注意力,四次元加载图片时的loading动画有点像Pac-Man,iOS 7 下载App从在桌面上显示到安装完成的一系列动画就很酷。
8、视错觉
打开Gmail时的蓝色进度条,理论上会让我们感觉读取速度快了11%
以上只是细节的归纳,宏观地看,优化流程,缩减层级,减少输入等也会让用户感觉快,因为用户使用App是为了解决一个问题,所以让App加速是一件系统的事情。
拓展阅读:
1、Instagram 速度快的秘密何在?
2、让等待更加美好
3、通过设计让APP变快的6个方法
4、移动应用“快”体验设计方法