I'm trying to use application cache in HTML5 for Android PhoneGap Application, but this doesn't work, it doesn't feel with ApplicationCahce Events.
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);
Also, this code run in iOS PhoneGap and Android Browser and this link for supported platforms.
Application Cahce Supported platforms
So, any suggestion it would be helpful.
I believe the application cache is not enabled by default in the WebView. What you will need to do is in the Java class that extends DroidGap call:
this.appView.getSettings().setAppCacheEnabled(true);
in your onCreate() method.
You may also need to call:
this.appView.getSettings().setAppCacheMaxSize(sizeInBytes);
this.appView.getSettings().setAppCachePath(pathToCacheDir);
Please note the cache directory must exist before you call setAppCachePath().
Read up on...
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)
For pathToCacheDir, use:
String pathToCacheDir = this.getApplicationContext().getCacheDir().getAbsolutePath()
did you set the correct mime-type?
At first I use the '.txt' like thie:
<!DOCTYPE html>
<html manifest="cache.txt">
<head>
It works well in iOS, Chrome but doesn't work in Android!
When I set the correct mime-type,it works well~
In tomcat,the default extension was '.appcache',and the default mime-type was:
<mime-mapping>
<extension>appcache</extension>
<mime-type>text/cache-manifest</mime-type>
</mime-mapping>