Tag: 本地存储

iOS 7的webview和localStorage持久性

我正在开发使用PhoneGap / Cordova的混合应用程序(仅适用于iOS和Android),并希望使用HTML5 localStorage来存储用于脱机访问的内容。 http://caniuse.com/#search=local存储说:“在iOS 5和6本地存储数据存储在一个位置,有时可能会被操作系统清除。” iOS 7(及更高版本)webview有什么情况,localStorage会在什么情况下持续存在,或被操作系统或用户清除? 将更新的应用程序清除localStorage? 怎么样的用户清除浏览器的Safari浏览器的历史logging – 也将适用于Web视图? 我是否需要担心(或者我可以控制)localStorage在fils系统上的创build位置。 我知道它不应该备份在iCloud上。 我有一个设备(iPad),并检查文件系统,我看到localStorage文件在应用程序沙箱内的〜/ Library / Caches中,请参阅下图。 从文档: https://developer.apple.com/icloud/documentation/data-storage/index.html可以再次下载或重新下载的数据应该存储在/ Library / Caches目录中。 您应该放入Caches目录中的文件示例包括数据库caching文件和可下载的内容,例如杂志,报纸和地图应用程序使用的文件。 我只是这样做,以设置数据: localStorage.setItem('foo','this is the FOO value'); localStorage.setItem('bar','and this is the BAR value');

iPhone本地存储“QUOTA_EXCEEDED_ERR”的问题

我尝试使用Iphone应用程序的HTML5(localStorage)中提供的客户端存储,我完全意识到与localStorage关联的“ QUOTA ”(当前为5MB )。 现在的问题是我的应用程序(没有数据以前存储)。 试图将数据存储在localStorage中会导致QUOTA_EXCEEDED_ERR,尽pipe总体数据的大小小于5 MB(精确到〜4Kb) (在普通浏览器中使用chrome web inspector可以find) 任何人都可以分享一些这样的数据如何重量4Kb导致QUOTA_EXCEEDED_ERR当上限为相同的5MB 请注意,问题只发生在iPhone , 所有的浏览器 ,甚至iPhone模拟器不会提示QUOTA_EXCEEDED_ERR错误 目前iPhone的图片是iPhone 4。

iOS的“Web应用程序”与Mobile Safari有不同的localStorage

我有一个与meta标签的iPad的webapp: <meta name="apple-mobile-web-app-capable" content="yes"> 当我从主页(支持networking应用程序的版本)打开应用程序或在Mobile Safari中input地址时,localStorage的内容不同。 我已经通过打印location.href确认地址是相同的。 移动Safari浏览器对localStorage进行的所有更改都反映在支持Web应用程序的版本中,但支持Web应用程序的版本所做的更改未反映在Mobile Safari版本中。 域是相同的,localStorage应该是相同的。 世界正在发生什么? 这可以解决吗? 更新 – 解决scheme :从接受的答案(迫使用户进入全屏模式)的build议#2我添加了这一点的代码: if(("standalone" in window.navigator) && !window.navigator.standalone) window.location = "instructions.html"; 因此,如果您使用的是支持独立模式的浏览器,并且您没有处于独立模式,请将其redirect到一个页面(instructions.html),该页面向用户显示如何将该应用添加到主屏幕。 感谢大家的意见!

Phonegap的iOS 5.1和localStorage

我正在使用localstorage为我的应用程序保存一个值,与PhoneGap一起工作,但是当苹果发布新的iOS 5.1时,我的应用程序现在不保存该值。 有谁知道如何解决这个问题? 非常感谢你!!! 编辑:我把我使用的代码: window.localStorage.setItem("login", $('#login').val()); 我用它来保存价值,我用它来读取值: function onDeviceReady() { var login = window.localStorage.getItem("login"); if (login != null) { $('#login').val(login); } } 但是,当我closures应用程序,值不会被保存。

我如何要求增加iPad上的HTML5本地存储大小,就像FT网页应用程序一样?

如果您打开http://app.ft.com (“金融时报”移动networking应用程序),系统会提示您将该应用程序添加到您的“家庭”中。 完成此操作后,当您打开应用程序时,系统会再次提示您允许本地存储数据库大小增加到50MB。 如何才能做到这一点? 有一些JavaScript API调用? 权限或其他? 这是iPad(iOS?)特定的,还是在其他Webkit浏览器上工作?

如何在基于WebKit的应用程序中启用本地存储?

我有一个embeddedWebKit WebView的Cocoa / Objective-C应用程序。 我需要打开数据库支持和本地存储。 我知道这是可以做到的 – 我已经在Safari上工作了 – 但我找不到如何在我自己的应用程序中设置的例子。 我发现这个(未答复的)SO问题提供了一个例子,但是,正如原来的海报所提到的,这个问题不起作用。 事实上,他使用的方法(setDatabasesEnabled,setLocalStorageEnabled)没有在我的WebKit.framework(Xcode 3.2.5)中定义,虽然它们似乎存在,如果我自己定义它们。 任何人都可以提供一个如何启用本地数据库存储为基于WebKit的cocoa应用程序的例子吗? 非常感谢! 更新:我有一些工作…我被“数据库”与“本地存储”混淆,这显然是完全不同的东西。 以下是可用的代码: WebPreferences* prefs = [webView preferences]; [prefs _setLocalStorageDatabasePath:@"~/Library/Application Support/MyApp"]; [prefs setLocalStorageEnabled:YES]; 所以,这工作,但它需要私人方法_setLocalStorageDatabasePath,这意味着没有App Store的我。 所以我现在修改的问题是:有没有办法使这个工作, 而不使用私人方法? 我在这个答案中find了WebDatabaseDirectory首选项 ,它控制着数据库的位置 。 但是我找不到源中任何位置的本地存储的相应密钥。 或者有没有办法让我强制本地存储使用数据库,所以WebDatabaseDirectory的关键? 有任何想法吗?

将使用相机拍摄的照片捕获并存储到本地数据库/ PhoneGap / Cordova / iOS中

我目前正在使用Phonegap / Cordova和jQuerymobile构buildiOS应用程序。 这个想法是用相机拍摄照片并存储拍摄的图像以供将来使用。 我想将path/文件名存储到我的本地数据库,并将图片文件移动到iPhone中的一个永久的地方。 有人能给我一个例子吗?