利用HTML5开发Android(6)---构建HTML5离线应用

需要提供一个cache manifest文件,理出所有需要在离线状态下使用的资源
例如
Manifest代码
 CACHE MANIFEST
#这是注释
images/sound-icon.png
images/background.png
clock.html
clock.css
clock.js NETWORK:
test.cgi CACHE:
style/default.css FALLBACK:
/files/projects /projects
 在html标签中声明 <html manifest="clock.manifest"> 

 HTML5离线应用更新缓存机制
分为手动更新和自动更新2种
自动更新:
在cache manifest文件本身发生变化时更新缓存 资源文件发生变化不会触发更新
手动更新:
使用window.applicationCache
Js代码
 if (window.applicationCache.status == window.applicationCache.UPDATEREADY) {
window.applicationCache.update();
在线状态检测
HTML5 提供了两种检测是否在线的方式:navigator.online(true/false) 和 online/offline事件。 在Android中构建离线应用
Java代码
 //开启应用程序缓存
webSettingssetAppCacheEnabled(true);
String dir = this.getApplicationContext().getDir("cache", Context.MODE_PRIVATE).getPath();
//设置应用缓存的路径
webSettings.setAppCachePath(dir);
//设置缓存的模式
webSettings.setCacheMode(WebSettings.LOAD_DEFAULT);
//设置应用缓存的最大尺寸
webSettings.setAppCacheMaxSize(1024*1024*8); //扩充缓存的容量
public void onReachedMaxAppCacheSize(long spaceNeeded,
long totalUsedQuota, WebStorage.QuotaUpdater quotaUpdater) {
quotaUpdater.updateQuota(spaceNeeded * 2);
}
上一篇:JAVA 链表操作:单链表和双链表


下一篇:windows端加密程序,lua代码,ZeroBrane调试