android - HTML5 中的应用程序缓存在 Android PhoneGap 应用程序中不起作用

标签 android html cordova android-browser application-cache

我正在尝试在 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/

相关文章:

android - 如何在android中获取动画?

android - firebase.database.DatabaseException : Failed to convert value of type java. lang.Long 到字符串

html - 在样式按钮中控制链接样式

c# - 如何从后面的代码设置 CarouselView 的项目?

javascript - 覆盖 Bootstrap 表选定的行背景颜色

javascript - 仅在刷新后计算的字段

css - iPhone X 'chin' 导致 Cordova 应用程序无法利用空间

javascript - IOAuth.IO 与 Ionic/Angular 混合应用程序的集成

android - 如何在 phonegap/cordova 中运行 java 代码?

android - 如何清除 Eclipse Android 模拟器上的缓存