通过设计让APP变快的6个方法

我们都知道不管网页还是移动应用,响应速度都是最重要的体验指标之一,并且移动应用的网络环境不稳定,速度的体验显得尤为重要。其实速度优化不仅是程序员的事,设计,也能够让APP变得更快。

  1. 后台执行

  这是一条很通用,也容易理解的方法。用户不会愿意盯着进度条傻傻地等待,除了“取消”没有其他选择。在系统处理一些网络任务的时候,完全可以允许用户做一些其他的事情。

  各大平台的发微博,都采用了后台执行。云阅读的离线下载也采用后台执行。

  而微博的看长图(或视频),是个反例。网络不给力时,要么等待1分钟让图加载完,要不就只好放弃看图。为什么不能让图加载的同时,用户可以看其他微博呢?

  2. 在载入前显示内容

  客户端与web的一个不同点,客户端的显示内容包括本地数据和网络数据两部分。在设计界面时,将更多的信息放在本地,在网络数据未载入时即显示本地数据,让用户产生一种“已经载入一半了”的错觉,即使最终的耗时一样,心理感受也会更快。当然把数据过多地写在本地,会牺牲一些灵活性,需要根据具体情况考虑。

  具体请看twitter、Facebook、Vine等优秀产品的启动画面,虽然同是静态图片,但它们不使用LOGO而假装已经载入了“导航栏”和“标题栏”,让人感觉“点击后立即就启动了”。

  再如App Store的详情页,在详细信息载入前,已有信息先显示。

  3. 充分利用好缓存

  缓存可以把网络数据保存在本地,下次打开时无需要再次向网络请求,减少流量并减少等待时间。在设计时,可以先显示缓存内容,同时后台到网络上拉取新内容,若有新内容立即替换或下次访问时替换。但缓存使用也要注意“度”,过大的缓存文件占用太多的系统空间,会让用户一怒之下卸载APP。

  云阅读的“书城”和“通过微博找好友”等界面,都使用了缓存机制,提高打开页面的速度。

  4. 界面先行,网络交互随后

  对于一些数据量很小,且失败可能性较小的网络交互,用户并不需要明确知道APP在干这些事情,也能够顺畅地使用APP,那么我们就应该“把一些事实掩盖起来”,即界面上听话地、迅速地完成任务(心智模型),程序后台默默地继续执行任务(实现模型)。

  最常用的比如QQ、微信、易信等聊天界面。点击发送后,消息立即”飞”到聊天上下文中,其实对方还没收到。但这样的设计让沟通的过程更顺畅,没有“正在发送 – 发送成功”各种过程的干扰。

  用户在收藏文章,关注好友等操作时,数据量很小,可以界面先行。用户在继续浏览文章的同时,系统会把文章收藏好。

  与此思路相仿的另一种方法也常被用到:在无网络条件下,用户进行操作(比如写评论,写备注等),把用户的输入内容保存在本地,等到有网络时再上传。让用户有连贯的体验。

  5. 预测用户行为,提前开始任务

  不知道大家使用淘宝有没有这样的习惯,在搜索结果列表,将所有感兴趣的结果都打开为新标签页,然后一个个地看,没兴趣的就关闭。这样做的好处是,在我浏览商品详情页的时候,每个页面都是载入完全了,否则我点开一个看一个,每个都要等待加载完,就会大大降低效率。

  那么能否通过设计,来满足类似使用场景呢?应该是可以的,那就是预测用户的行为,提前开始任务。

  策略类似这样:

  用户在某个界面停留的时候,预测下一步可能做ABC三个任务,系统于是把这些任务都提前做完。当用户做出选择比如A时,界面可以迅速响应,并且同时把BC两个任务从内存中清空掉以节省资源。(当然这招也有限制:1,只适用于免费的网络。2,预加载不能影响系统的性能)

  我们就回来看淘宝的iPad客户端。它有这样的设计,在某详情页查看时,向右一划可以查看下一个商品,也许这是一个好设计,但是却没有帮我预加载下一个界面,我还是不得不傻傻地等页面加载完。

  那我们看一些其他的设计

  在网易云阅读,我们认为用户进入一个资讯源的一个最大可能就是刷新查看新内容。所以即使没有打开自动刷新选项时,进行源列表,后台自动加载新内容,并在刷新按钮上显示“NEW”,此时当用户再刷新,内容立即呈现。

  Android更新提醒在安装包自动下载完成之后提示,让用户不再需要等待下载过程。

  再比如云阅读的查看大图,自动载入下一张;TableView在将要达到底部时自动载入等。

  Chrome在下载前询问是否保存,在用户决定之就已经开始下载,节省了不少时间。如果用户放弃,已下载内容会自动删除。

  那么,用这个思路

  写微博插入照片后,能否自动上传,而不必等用户点击了“发送”才上传?

  看微博时定位到某条微博,是否应该自动加载大图或视频?

  音乐应用在当前歌曲快播放完时,是否应该下载下一首歌,以免切歌的时候会卡一会儿?

  6. 使用动效来掩护载入过程

  优秀的动效设计,让产品更好用且让人眼前一亮。其实,动效还有另一大用处,吸引用户的注意,让本来枯燥的等待载入的过程,变成愉悦欣赏的过程。

  以下两个例子来源于网络

  最后,感谢这篇文章的作者,移动产品设计的八大设计原则

  有些观点来源于此,但我加入了自己的理解和更多的例子,希望对大家有所启发。

http://uedc.163.com/11291.html

通过设计让APP变快的6个方法

时间: 2024-11-06 07:07:53

通过设计让APP变快的6个方法的相关文章

【翻】Android Design Support Library 的 代码实验——几行代码,让你的 APP 变得花俏

译者地址:[翻]Android Design Support Library 的 代码实验--几行代码,让你的 APP 变得花俏 原文:Codelab for Android Design Support Library used in I/O Rewind Bangkok session--Make your app fancy with few lines of code 原文项目 demo: Lab-Android-DesignLibrary 双语对照地址: [翻-双语]Android D

Android Design Support Library 的 代码实验——几行代码,让你的 APP 变得花俏

译者地址:[翻]Android Design Support Library 的 代码实验——几行代码,让你的 APP 变得花俏 原文:Codelab for Android Design Support Library used in I/O Rewind Bangkok session----Make your app fancy with few lines of code 原文项目 demo: Lab-Android-DesignLibrary 双语对照地址: [翻-双语]Android

【转】【翻】Android Design Support Library 的 代码实验——几行代码,让你的 APP 变得花俏

转自:http://mrfufufu.github.io/android/2015/07/01/Codelab_Android_Design_Support_Library.html [翻]Android Design Support Library 的 代码实验——几行代码,让你的 APP 变得花俏 Jul 1, 2015 译者地址:[翻]Android Design Support Library 的 代码实验——几行代码,让你的 APP 变得花俏 原文:Codelab for Androi

初学node.js安装模块时创建空文件用taobao镜像安装速度变快

在C:\Users\xx文件夹下按Shift,单击鼠标右键选择‘在此处打开命令行’,输入ren xx.x .npmrc   /*此处把一个已知文件xx.x修改为空文件名的文件.npmrc*/或者用一般的IDE:EditPlus或者sbulime直接创建.npmrc文件,接下编辑该文件输入registry = http://registry.npm.taobao.org在npm安装模块的速度就会变快.在初次安装nodejs时命令行输入npm可能最报错,可以先安装一个模块后再敲npm,例如npm i

poj水题-1579 将递归记录会变快

短平快递归肯定卡死,这里需要了解一个情况. 1.递归是否在很多情况再做重复工作? 2.由递归生成的“大面积数据”是否是由“小范围数据”组合而来? 如果都回答“是”.就强烈推荐“记笔记方式”.如果有笔记记录,那么查笔记,否则递归. #include <stdio.h> long s[21][21][21] = {0}; int w(int a,int b,int c) { if (a <= 0 || b <= 0 || c <= 0) return s[0][0][0]=1;

电脑变慢了怎么变快?教你从软硬件两个方面搞定它!

电脑变慢了怎么变快?教你从软硬件两个方面搞定它! 谁都希望计算机一开机就可以立即进入Windows 系统而不用等待,或者是系统在使用的时候不会越来越慢,但由于种种原因常常使这些愿望不能实现,甚至一开机就死机或者用着用着就越来越慢的情况也经常发生.其实有些时候Windows 启动速度缓慢并不是它本身的问题,而是一些设备或软件造成的.本文就是软件.硬件和病毒三大方面来分析系统速度变慢的原因,并且提供了针对系统的加速技巧. 一.软件篇 1.设定虚拟内存 硬盘中有一个很宠大的数据交换文件,它是系统预留给

电脑慢的快速解决办法 22种方法电脑速度变快10倍

很多电脑用户一直都被电脑慢的问题困扰着,而大脑大神根本不把电脑慢当做电脑问题,因为让电脑变快的方法有很多,而且操作都巨简单. 提高电脑速度的方法也能很多而且很容易操作,一切的难,只是来源于你没有学过而已,现在就跟着小编来学那些简单又使用的电脑技能吧. 让电脑速度快10倍,大概会让人觉得很不可思议吧,而实际上,你羡慕的大神可能也只是因为学会了下面的22种提高电脑速度的方法哦. 1.系统常规优化 1)关闭系统属性中的特效.点击开始→控制面板→系统→高级→性能→设置→在视觉效果中,设置为调整为最佳性能

App线上推广的笨方法——从0到100万的质变

线上推广APP,有一些笨办法,经常被人忽视,但确是一些成本低.效果好的方法,我们今天就来讲讲这些线上推广APP的笨办法.比如说论坛发贴, QQ群聊,拉注册,比较辛苦,你拉来一个用户注册我们的网站,使用我们的APP,这是比较慢的方法.还有就是社交分享,比如说分享到微博.人人网.微信等等,这些都是App推广中的比较笨的方法. 还有一些快的方法,比如说投放电视广告,比如说上<天天向上>,卫视.汽车.公交车上面的广告.地铁上面的广告,明星代言.事件营销.另外就是疯狂砸钱,像滴滴打车一样.当然快的方法还

银行应用系统安全性设计(1):数据传输的加密方法

银行应用系统安全性设计(1):数据传输的加密方法 数据传输的加密方法 1.报文鉴别代码: 在数据传输中,为防止线路窃听和非法进入修改,引入了传输密钥和报文鉴别(MAC),以确认信息包的合法性.数据在线路上的加密是以传输密钥为基础的,前置机每天开机,自动向主机申请传输密钥,将其中一个下传到前置机,另一个存放在主机.以后数据的传输均通过这一对密钥加密.因为传输密钥的申请是随时可以重复的,也就是说传输密钥是动态的,而且每一前置机与主机之间的密钥对应是不同的,所以确保了数据在传输中的安全性和保密性.2.