2012-07-07 13 views
13

Gdy skrypt żąda geolokalizacji za pomocą interfejsu API geolokalizacji HTML5,prosi o pozwolenie na korzystanie z usług lokalizacyjnych systemu iOS.Zapobieganie denerwującym alertom geolokalizacji HTML5 wewnątrz UIWebView

Jest to dość irytujące, szczególnie gdy ładujesz statyczne pliki HTML, ciągle pyta o pozwolenie dla każdego pliku, nawet jeśli użytkownik już udzielił tego pozwolenia dla samej aplikacji.

Czy istnieje sposób, aby temu zapobiec?

Wiem, że na safari zezwolenie na geolokalizację jest oparte na domenie i zgadzam się na prośbę o pozwolenie, gdy wniosek zostanie złożony dla innej domeny, ale nie powinien UIWebView mieć takie samo uprawnienie geolokalizacji jak aplikacja, gdy ładowanie statycznych plików HTML lub lokalnych?

Czy robię coś nie tak?

UIAlertView requesting permission for domain

+3

Wygląda na to, że chciałeś zgłosić raport błędu na stronie [bugreport.apple.com] (http://bugreport.apple.com) – JustSid

Odpowiedz

2

Zawsze można przekazać geolokalizacji z aplikacji do javascript załadowanego do WebUIView. Poszukaj "stringByEvaluatingJavaScriptFromString" w WebUIView?

+0

To właśnie problem, którego próbuję uniknąć. Dowiedziałem się, że PhoneGap ma ciekawą implementację tego podejścia, w którym zastępuje api geolokalizacyjne HTML5, ale jest to również dodatkowa praca, której starałem się uniknąć. http://docs.phonegap.com/en/1.7.0/cordova_geolocation_geolocation.md.html#Geolocation –

+0

Słyszę cię. W rzeczywistości jest to całkiem proste, wywołanie metody js jest całkiem proste, nie trzeba tak naprawdę do phonegapa. –

+0

Rozumiem, ale musiałbym wdrożyć całą logikę CoreLocation w mojej aplikacji i zrobić to samo, aby zachować zgodność z moją aplikacją na Androida, która używa tego samego HTML/JS, na przykład –

Powiązane problemy