Na iOS7, podczas próby uzyskania dostępu do obiektu localStorage HTML5 przez JavaScript, zatrzymuje wykonywanie Javascript. Działa poprawnie w poprzednich wersjach iOS. Aplikacja działa idealnie, gdy aplikacja jest świeżo zainstalowana i uruchomiona. Ale potem zamykam aplikację i uruchamiam ją ponownie, nie działa i nie udaje się uzyskać dostępu do localStorage.iOS7 nie może uzyskać dostępu do localStorage HTML5, jeśli pliki cookie są wyłączone
Aby wyłączyć cookies, Użyłem poniższy kod:
[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookieAcceptPolicy:NSHTTPCookieAcceptPolicyNever];
Aby uzyskać dostęp localStorage użyłem poniżej kodu:
CGRect rect = self.view.frame;
UIWebView* webView = [[UIWebView alloc] initWithFrame:rect];
[self.view addSubview:webView];
[webView loadHTMLString:@"<script>alert('hello world');alert(localStorage);</script>" baseURL:nil]
I już przez docs iOS7, ale nie mógł znaleźć żadnego aktualizacja związana z tym problemem. Czy ktoś się z tym zmierzył? Prosimy o podzielenie się wszelkimi informacjami na ten temat, byłoby bardzo pomocne. Jakiekolwiek obejścia tego problemu?
Dzięki
Chciałbym usłyszeć, co odkrywasz. mamy ten sam problem. – Crashalot
Nie mogłem znaleźć poprawki. Nie mogę włączyć plików cookie, więc w końcu musiałem zmienić mój kod zarówno po stronie serwera, jak i aplikacji. Zapisuję dane w UserDefaults, komunikuję się ze stroną internetową, wykonuję javascript na moim WebView i używam natywnego mostka Javascript do wywołania mojej strony. Nie jestem pewien, ile ci to pomaga. Ponieważ miałem kontrolę nad kodem po stronie serwera, więc działa on dla mnie. – san
Inną informacją jest to, że zgłosiłem błąd w tym problemie. Apple zamknęło mój raport o błędzie mówiąc, że jest duplikatem innego raportu o błędzie. Co najmniej, oznacza to, że Apple zaakceptowało to jako błąd i mam nadzieję, że go naprawią. Ale Bóg wie, kiedy :) – san