我正在开发使用科尔多瓦(3.4)的移动应用程序。我的核心应用程序文件嵌入到我的应用程序档案(.apk或.ipa)中,并且必须从我的服务器检索一些文件(js/html/css)。 因此,如果我希望我的应用程序可以脱机使用,则需要对这些文件使用appcache。Appcache在科尔多瓦应用程序
我appcache.manifest的样本:
CACHE MANIFEST
# version 7
NETWORK:
*
http://*
https://*
CACHE:
# Message module
http://my.server.ip/module/routes.json
http://my.server.ip/module/css/style.css
http://my.server.ip/module/js/controller.js
http://my.server.ip/module/js/service.js
...
我的index.html(嵌入到我的应用程序):
<!DOCTYPE html>
<html lang="en" xmlns:ng="http://angularjs.org" id="ng-app" ng-app="app"
manifest="http://my.server.ip/tmp_appcache.manifest">
...
<body>
<script>
document.addEventListener("deviceready", function(e) {
var appCache = window.applicationCache;
alert('device ready');
console.log('appCache', appCache);
// Fired after the first cache of the manifest.
appCache.addEventListener('cached', function(event) {
console.log(event);
alert('Appcache OK');
}, false);
appCache.addEventListener('UpdateReady', function(event) {
console.log(event);
alert('Appcache Reloaded');
}, false);
appCache.addEventListener('error', function(event) {
console.log(event);
alert('Appcache ERROR');
}, false);
appCache.addEventListener('checking', function(event) {
console.log(event);
alert('Appcache CHECKING');
}, false);
appCache.addEventListener('downloading', function(event) {
console.log(event);
alert('Appcache DOWNLOADING');
}, false);
appCache.addEventListener('noupdate', function(event) {
console.log(event);
alert('Appcache NOUPDATE');
}, false);
appCache.addEventListener('obsolete', function(event) {
console.log(event);
alert('Appcache OBSOLETE');
}, false);
}, false);
</body>
</html>
我的问题是,当我启动我的PP(在Android AND iOS),我没有看到任何警报(“准备就绪”除外),并且没有文件被缓存。
如果我打开我的设备浏览器Web应用程序的URL我居然看到我的警觉。
是否有另一种配置的PhoneGap怎样做才能让应用程序缓存?
我见过一些关于enabling appcache in Android的文章,但它似乎是针对旧版本的cordova,而且它不适用于我,如果它是我的问题的根源,appcache应该可以在iOS上使用。
任何想法将是有益的。由于
一直在寻找一个答案了几个小时,还没有同样的问题,发现使用HTML5缓存清单至今清晰的(和工作)的方式...... – Zwik
我创建了一个[问题在科尔多瓦JIRA](https://issues.apache.org/jira/browse/CB-6704)。 – Tako
另一个[JIRA](https://issues.apache.org/jira/browse/CB-6713)关于这个问题 – Tako