Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/212.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 安卓2.3.6+;Phonegap+;本地存储_Android_Cordova_Local Storage - Fatal编程技术网

Android 安卓2.3.6+;Phonegap+;本地存储

Android 安卓2.3.6+;Phonegap+;本地存储,android,cordova,local-storage,Android,Cordova,Local Storage,我正在使用phonegap和jQuery mobile开发一个移动应用程序 我收到来自QA的报告,在三星Galaxy Y(android 2.3.6)上,localStorage为空,因此导致应用程序崩溃 据我所知,android版本2.0+应该支持localStorage,我甚至在DroidGap类中添加了以下代码: super.appView.getSettings().setAllowFileAccess(true); super.appView.getSettings()

我正在使用phonegap和jQuery mobile开发一个移动应用程序

我收到来自QA的报告,在三星Galaxy Y(android 2.3.6)上,localStorage为空,因此导致应用程序崩溃

据我所知,android版本2.0+应该支持localStorage,我甚至在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);    
所以我很难理解为什么本地存储在这个特定的设备上似乎不受支持。有人告诉我,它甚至可以在其他具有相同版本Android的设备上正常运行


是否有任何设置或其他我不知道的事情会导致本地存储为空???

您可以从android SDK安装文件夹的平台工具文件夹运行logcat,在我的机器上这是:
C:\Program Files(x86)\android\android SDK\platform tools

只需在命令提示符下运行
adb logcat
。你会收到很多信息

我已经创建了一个测试应用程序,并在Galaxy Y上运行它,在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

,结果是升级了Phonegap(cordova)从1.8.1到2.0.0解决了这个问题……

我在2.3.6和localStorage上也遇到了问题,所以我测试了2.3.3和2.2 AVD图像以及Cordova 2.2.0,似乎localStorage是受支持的,但应该称为window.localStorage,而不是没有窗口范围,而是在Android 4.x和桌面Chrome上工作的。但还有一个问题是,当应用程序重新启动时,localStorage并不是持久性的,我在Hyderation中看到了同样的问题,它提供了一次又一次的应用程序重新存储,所以我认为这是受同一个bug的影响。

不,localStorage在PhoneGap中默认启用。你在“adb logcat”中看到了什么?请原谅我的愚蠢,我对Android一无所知-在手机上运行“abd logcat”时,我该如何看待它?忽略它-我已经找到了答案。这是我们使用jsconsole.com所做的,它表明它不受支持。然而,根据我在网上的发现,它应该得到支持。更奇怪的是,如果我在手机浏览器上访问www.html5test.com,它会显示支持本地存储。。。。。