Я не думаю, что в настоящее время существует какой-либо собственный API для доступа к локальному хранилищу, но вы можете попробовать создать веб-представление с некоторым JavaScript, который выводит локальное хранилище в, например, JSON.
Создайте UIWebView
с делегатом UIWebViewDelegate
, который реализует метод webViewDidFinishLoad:
и использует метод stringByEvaluatingJavaScriptFromString:
для запуска дампа.
Примерно так: сначала загрузите страницу в веб-представлении:
<html>
<head>
<script>
// download and insert JSON-js here
// https://github.com/douglascrockford/JSON-js
function dumpLocalStorageToJSON() {
d = {};
for(i = 0; i < localStorage.length; i++)
d[localStorage.key(i)] = localStorage.getItem(localStorage.key(i));
return JSON.stringify(d);
}
</script>
</head>
</html>
Тогда метод делегата финишной загрузки:
- (void)webViewDidFinishLoad:(UIWebView *)webView {
NSString *localStorageAsJSON = [webView stringByEvaluatingJavaScriptFromString:@"dumpLocalStorageToJSON();"];
// parse JSON and do something useful
}