凡客移动应用之android + html5技术运用 | 凡客 汪健飞 徐金山
TRANSCRIPT
Android DevCamp Produced by CSDN Website: http://devcamp.csdn.net/ Weibo: http://weibo.com/cmdnclub/
Android手机凡客 项目介绍
⼀一. 凡客移动应用简介
二. 凡客移动应用架构
三. 凡客移动应用中的性能优化(电商APP通用) - 网络请求优化; - 图片资源优化; - 数据缓存使用;
[ 目录 ]
应用平台:Android 1.6及以上版本 资费:免费 版本:2.3.2 更新日期:2012-7-11
[ 应用简介 ]
[ 快捷入口 ]
[ 多模式浏览 ]
[ 功能丰富 ]
[ 运营模块 ]
[ 技术架构 ]
Native App +
Web App
各取所长
Ø 表现力 Ø 速度 Ø 性能
Native App优势:
[ 技术架构 ]
Ø 成本 Ø 更新 Ø 跨平台
Web App优势:
WebView Ø Webkit在SDK中封装而成的一个组件,用来显示网络内容 Ø Java和JavaScript通过WebView的接口进行通信
[ 技术简介 ]
[ 技术简介 ]
Native调用Web Ø loadUrl方法
webview.loadUrl(" m.vancl.com ");
Ø loadDataWithBaseURL方法
webview.loadDataWithBaseURL(String baseUrl,
String data, String mimeType,
String encoding, String failUrl);
[ 技术简介 ]
Web调用Native Ø addJavascriptInterface方法
webview. addJavascriptInterface(Object obj, String terfaceName);
① Native:webview. addJavascriptInterface (this, “VanclAct”);
② Web:Javascript:window.VanclAct.redirect();
③ Native:BaseActivity.redirect() { …… };
[ 应用实例 ]
页面中局部布局的Web内容引入:凡客首页(Native 调用 Web)
webview.loadDataWithBaseURL(null, homeBean.content, "text/html", "utf-8", null);!
[ 应用实例 ]
页面中整体布局的 Web 内容引入:webview.loadUrl(“m.vancl.com”); (Native 调用Web) (Web 调用 Native)Native:webview. addJavascriptInterface (this, “VanclAct”); Web:Javascript:window.VanclAct.redirect(); Native:BaseActivity.redirect() { …… };
[ 性能优化 ]
Ø 并行请求 优点:响应速度相对较快
缺点:子线程过多,不容易控制
Ø 串行请求 优点:不会出现过多子线程,节省资源。
缺点:如何有效中断废弃的请求。
网络请求方式
[ 性能优化 ]
如何中断废弃请求 Ø 中断废弃请求应用场景? 用户快速切换页面
Ø 为何需要中断废弃请求? 采用串行方式请求,废弃旧请求,快速响应当前请求
Ø 现有中断请求方式? abort()方法 减少Timeout时间。
[ 性能优化 ]
图片资源优化 Ø 本地图片的存储优化 ① res包中图片资源的精简 ② 图片在使用时,内存的回收机制 ③ 图片在保存到外存时,以字节数组的方式进行保存
Ø 网络图片的适配请求 请求网络图片资源时,根据终端的屏幕分辨率,请求图片的质量及尺寸,以进行适配性支持
[ 性能优化 ]
数据缓存的使用 Ø 策略 ① 对于业务数据变动频率较低的功能模块,进行数据的缓存 ② 对于业务数据变动频率较高的功能模块,不进行数据缓存 ③ 页面显示时,使用上⼀一次的缓存数据进行内容显示
Ø 目的 ① 不阻塞用户体验 ② 保证本地业务数据与服务器端的数据较及时的同步
[ 问答环节]
凡人都是客,我们是诚恳的品牌
21
感 谢 2012年7月28日!