用户体验,速度为王,来几个优化APP“速度”的建议。后端
毋庸多言,已经是一般作法。缓存
通常在执行下载任务时让其在后台运营,让用户有精力去作别的事情。安全
后端加载微信
客户端与WEB的数据加载形式有异:客户端的现实内容包括本地数据和网络数据两部分。网络
在设计界面时候,将更多的信息放在本地,在网络数据未载入时即显示本地数据,让用户产生一种“已经载入了一半”的错觉,即便最终的耗时同样,心理感觉也会很快。优化
固然,,把数据过多地卸载本地,会牺牲一些灵活性,须要根据状况考虑。动画
预前加载spa
具体请看twitter、Facebook、Vine等优秀产品的启动画面,虽然同是静态图片,但它们不使用LOGO而伪装已经载入了“导航栏”和“标题栏”,让人感受“点击后当即就启动了”。设计
缓存能够把网络数据保存在本地,下次打开时无需再次向网络请求,减小流量并减小等待时间。在设计时,能够先显示缓存内容,同时后台到网络上拉取新内容,如有新内容当即替换或下次访问时替换。但缓存使用也要注意“度”,过大的缓存文件占用太多系统空间,小心用户一怒之下瞬间卸载。orm
对于一些数据量很小,且失败可能性较低的网络交互,用户并不须要明确指导APP在干这些事情,也可以顺畅地使用App,那么咱们就把“一些事实掩盖起来”。即,界面上“看起来”迅速地完成任务,程序后台默默地继续执行任务。
好比:1.微信在发出“消息”时,消息“看起来”已经飞到聊天窗口中,但其实对方尚未收到,这样的设计让沟通的过程更加顺畅。
2.在无网络条件下,用户修改备注、我的信息时,先将用户的信息保存在本地。等到网络链接后再将信息上传。
3.用户在收藏文章,关注好友等操做时,数据量很小,能够界面先行。用户能够继续浏览当前文章,系统会把文章收藏好。
用户在收藏文章,关注好友等操做时,数据量很小,能够界面先行。用户在继续浏览文章的同时,系统会把文章收藏好。
例如某云阅读,咱们认为用户进入一个资讯源的一个最大可能就是刷新查看新内容。因此即便用户没有点击刷新,但系统默认加载新内容。以后当用户再次刷新时,内容马上呈现。
优秀的动效设计能够吸引用户注意,减小心理等待时间。
look at me
凡是想要抓住用户,让你的应用有足够的存活时间(不至于过段时间就被卸载),安全不得不重视。试想,假如这是一个不安全的应用,相信大部分用户都会果断卸载。而若是提早都作好安全准备,而且在其余方面已经作得很好了,那么,用户是很容易陷进去的。