如何访问iOS上由PhoneGap创建的HTML5本地存储? [英] How do I access HTML5 local storage created by PhoneGap on iOS?

查看:98
本文介绍了如何访问iOS上由PhoneGap创建的HTML5本地存储?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们正在从PhoneGap转换为真正的原生iPhone应用,我们需要访问存储在由PhoneGap创建的HTML5本地存储中的用户数据。我们如何获得该数据,以便我们能为用户创建无缝更新过程?

We are transitioning away from PhoneGap to a truly native iPhone app and we need to access user data stored in HTML5 local storage created by PhoneGap. How do we get at that data so that we can create a seamless update process for the user?

推荐答案

Mattias的方式,但我只是直接访问webkit本地存储数据库,然后导入包括与iPhone SDK的sqlite3 lib提取我需要的值。这是如何访问由PhoneGap创建的localstorage:

I haven't tried Mattias' way but I just accessed the webkit local storage database directly and then imported the sqlite3 lib included with the iPhone SDK to extract the values I needed. This is how you access localstorage created by PhoneGap:

NSString *databaseName = @"file__0.localstorage"; 

//Get Library path 
NSArray *libraryPaths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, 
                                                            NSUserDomainMask, YES); 
NSString *libraryDir = [libraryPaths objectAtIndex:0];

NSString *databasePath = [libraryDir 
                             stringByAppendingPathComponent:@"WebKit/LocalStorage/"]; 

NSString *databaseFile = [databasePath 
                             stringByAppendingPathComponent:databaseName]; 

BOOL webkitDb; 

NSFileManager *fileManager = [NSFileManager defaultManager]; 

webkitDb = [fileManager fileExistsAtPath:databaseFile]; 

if (webkitDb) {
    MMWebKitLocalStorageController* wkc = [[MMWebKitLocalStorageController alloc] init];
    [wkc updateUserFromLocalStorage:databaseFile];
}

这篇关于如何访问iOS上由PhoneGap创建的HTML5本地存储?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆