2012-07-07 12 views
13

Siempre que un script solicite la geolocalización mediante la API de geolocalización de HTML5, el UIWebView solicita un permiso para usar los servicios de ubicación de iOS.Prevención de alertas de geolocalización HTML5 molestas dentro de UIWebView

Esto es bastante molesto, especialmente cuando carga archivos estáticos HTML, sigue pidiendo permiso para cada archivo, incluso si el usuario ya otorgó este permiso para la aplicación.

¿Hay alguna manera de evitarlo?

Sé que en Safari el permiso para la geolocalización se basa en el dominio y acepto pedir permiso cuando la solicitud se realiza para un dominio diferente, pero no debería UIWebView tener el mismo permiso de geolocalización que la aplicación cuando cargando HTML estático o archivos locales?

¿Estoy haciendo algo mal?

UIAlertView requesting permission for domain

+3

Parece que en realidad quería presentar un informe de error en [bugreport.apple.com] (http://bugreport.apple.com) – JustSid

Respuesta

2

Siempre se puede pasar a la geolocalización de su aplicación a la javascript cargado en el WebUIView. Busque 'stringByEvaluatingJavaScriptFromString' en WebUIView?

+0

Ese es exactamente el problema que trato de evitar. Descubrí que PhoneGap tiene una implementación interesante de este enfoque, donde anula la API de geolocalización de HTML5, pero eso también es un trabajo adicional que estaba tratando de evitar. http://docs.phonegap.com/en/1.7.0/cordova_geolocation_geolocation.md.html#Geolocation –

+0

Te escucho. En realidad, es bastante simple, llamar a un método js es bastante simple, no es necesario realmente para phonegap. –

+0

Veo, pero tendría que implementar toda la lógica CoreLocation en mi aplicación, y hacer lo mismo para mantener la compatibilidad con mi aplicación Android, que utiliza el mismo HTML/JS, por ejemplo –

Cuestiones relacionadas