我正在尝试在 Android PhoneGap 应用程序中使用 HTML5 中的应用程序缓存,但这不起作用,ApplicationCahce 事件感觉不到。
function logEvent(event) {
console.log(event.type);
}
window.applicationCache.addEventListener('checking', logEvent, false);
window.applicationCache.addEventListener('noupdate', logEvent, false);
window.applicationCache.addEventListener('downloading', logEvent, false);
window.applicationCache.addEventListener('progress', logEvent, false);
window.applicationCache.addEventListener('cached', logEvent, false);
window.applicationCache.addEventListener('updateready', logEvent, false);
window.applicationCache.addEventListener('obsolete', logEvent, false);
window.applicationCache.addEventListener('error', logEvent, false);
此外,此代码在 iOS PhoneGap 和 Android 浏览器中运行,此链接用于支持的平台。 Application Cahce Supported platforms
因此,任何建议都会有所帮助。
最佳答案
我相信默认情况下 WebView 中未启用应用程序缓存。您需要做的是在扩展 DroidGap 调用的 Java 类中:
this.appView.getSettings().setAppCacheEnabled(true);
在您的 onCreate() 方法中。
您可能还需要调用:
this.appView.getSettings().setAppCacheMaxSize(sizeInBytes);
this.appView.getSettings().setAppCachePath(pathToCacheDir);
请注意在调用 setAppCachePath() 之前缓存目录必须存在。
继续阅读...
http://developer.android.com/reference/android/webkit/WebSettings.html#setAppCacheEnabled(boolean ) http://developer.android.com/reference/android/webkit/WebSettings.html#setAppCacheMaxSize(long ) http://developer.android.com/reference/android/webkit/WebSettings.html#setAppCachePath(java.lang.String )
关于android - HTML5 中的应用程序缓存在 Android PhoneGap 应用程序中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12709673/