总结了一下,主要有以下方面。
1、接口请求优化
接口的优化理论上不属于APP弱网络的优化,但是这个的API性能的问题,确实在网络条件不好的情况下才暴露,对于一个良好的Server来说,绝大部分拖延请求速度的地方都是在IO上。包括,磁盘读写的IO,SQL查询的IO等等。
后端设计接口是可以从以下几方面优化:
1.慢查询监控 2.多查询优化
前端上:
频繁的请求网络,可能造成服务器压力,考虑多个接口合并成一个,减少请求网络的次数。
2、图片优化
网络优化,绝大部分都是对图片的优化。
1、静态图片可以部署到CDN上。
2、压缩图片,减少图片体重
3、游戏上可以考虑大合图集,减少网络io(网络IO主要延时由: 服务器响应延时 + 带宽限制 + 网络延时 + 跳转路由延时 + 本地接收延时 决定。(一般为几十到几千毫秒,受环境干扰极大))
4、不同网络的不同图片下发
比如:
2/3G使用低清晰度图片——>下发300X240,精度为80的图片
4G普通清晰度图片——>下发600X480,精度为80的图片
WiFi高清晰度图片(最好根据网速来判断,wifi也有慢的)——>下发600X480,精度为100的图片
3、网络消息缓存
常用信息加入缓存机制、增量更新 。把数据保存到本地,打开APP的时候先使用本地数据,然后等请求到网络数据后再更新页面数据。
4、界面优化
先显示文字在加载图片
同样是在Webview之中,图片或者多媒体的加载速度肯定是远远慢过文字的加载速度的。由于不同的webview显示和渲染效果不同,我们可以先让webview先显示文字,在显示图片。给用户一种可以先预览整个网页概况的感觉。