我正在开发使用的PhoneGap和jQuery Mobile的移动应用。
我有从QA,关于三星Galaxy Y(安卓2.3.6)报告 - localStorage的是空,因此会导致应用崩溃。
据我所知,应该的localStorage在Android 2.0以上版本的支持,我甚至已经添加以下代码到DroidGap类:
super.appView.getSettings().setAllowFileAccess(true);
super.appView.getSettings().setDatabaseEnabled(true);
super.appView.getSettings().setDatabasePath("/data/data/" + appView.getContext().getPackageName() + "/databases/");
super.appView.getSettings().setDomStorageEnabled(true);
所以我努力理解为什么localStorage的似乎不是这个特定的设备上得到支持。 有人告诉我,它甚至可以运行在具有相同版本的Android的其他设备OK!
有没有我不是任何设置或其他东西知道可能导致的localStorage为空?
您可以运行在Android SDK安装文件夹的平台工具文件夹logcat的,我的机器上是这样的: C:\Program Files (x86)\Android\android-sdk\platform-tools
只要运行adb logcat
从命令提示符。 你会得到很多信息。
我创建了一个测试应用程序并运行它在银河Ÿ已在onDeviceReady功能下面的代码。 使用logcat的它显示了不支持的消息
if (typeof window.localStorage == 'object')
{
// localStorage is supported
console.log('**HelloGap: localStorage is supported');
}
else
{
// localStorage is not supported
console.log('**HelloGap: localStorage is NOT supported');
}
可以过滤来自logcat的消息,但我一直没能得到那个工作,所以我只是重定向输出到一个文本文件,然后搜索它**HelloGap
因此,原来从1.8.1到2.0.0修复了问题升级的PhoneGap(科尔多瓦)....
我有问题,2.3.6和localStorage的还让我与科尔多瓦2.2.0测试2.3.3和2.2 AVD图像融合在一起,似乎localStorage的支持,但应该被称为window.localStorage不无窗范围,但什么是工作在Android 4.x版和桌面版Chrome。 但还有另一个问题,即重新启动应用程序时的localStorage是不是永久的,我看到的水合作用,它一次又一次地应用reinstalation提供平等的问题,所以我认为这是由同一个问题的影响。