Cordova 应用程序正在 Android 应用程序的数据空间上使用 AJAX 保存 DOM 加载的数据
Posted
技术标签:
【中文标题】Cordova 应用程序正在 Android 应用程序的数据空间上使用 AJAX 保存 DOM 加载的数据【英文标题】:Cordova app is saving DOM loaded data using AJAX on Android app's Data space 【发布时间】:2015-01-17 06:49:29 【问题描述】:我的 Cordova+JQM 应用程序有多个模板(跨子页面和多个 html 文档),其中填充了使用 AJAX 请求的数据。我的问题是,每次我在模板中加载数据时,我的应用程序的大小都会增加,不管我之前是否打开过它。并且应用的细节并没有显示Cache增加,而是Data增加。缓存是最小的,例如几 kb,但数据以 MB 为单位。
我未启用了 JQM 的 data-dom-cache
。我什至尝试在离开模板(即从一个 HTML 文件到另一个 HTML 文件)之前调用一个函数来清空 DOM 数据,如下所示:
$( document ).on( "pagecontainerbeforehide", function()
console.log("gonna leave");
$("#page-container").empty();
);
但它没有用。事实上,我在离开时无法调用任何事件(转到另一个 HTML 文档)。
【问题讨论】:
【参考方案1】:问题是,Cordova 通过 AJAX 接收到的任何内容都被缓存到 app_webview/Cache
中。
所以,我尝试使用 File API 删除内容,但不知何故它一直失败;给出了一些未知错误,因此无法调试。
但是这个插件做到了:https://github.com/Sharinglabs/cordova-plugin-cache。它与 Cordova 3.3.1 及更高版本兼容。它适用于我的 Cordova 4.2.0 应用程序。
【讨论】:
以上是关于Cordova 应用程序正在 Android 应用程序的数据空间上使用 AJAX 保存 DOM 加载的数据的主要内容,如果未能解决你的问题,请参考以下文章
Cordova 应用程序正在 Android 应用程序的数据空间上使用 AJAX 保存 DOM 加载的数据
Android 应用 (Cordova) 上的文本区域中的字数超出限制
使用cordova将图片从android画廊分享到cordova应用程序
导入的 Cordova android 应用程序的应用程序名称问题