3 votes

WKWebView demande deux fois la permission de localisation

J'ai une simple application iOS Swift

let url = URL(string: "https://www.mycustompage.com")!
webView.load(URLRequest(url: url))

Dans Info.plist, j'ai autorisé toutes les autorisations de confidentialité de localisation.

Sur https://www.mycustompage.com, il y a un bouton HTML qui localise l'utilisateur.

Maintenant, j'ai le problème que mon application demande deux fois les autorisations de localisation. Une fois pour l'application et une fois pour le WKWebView.

Comment puis-je désactiver la demande pour le WebView !?

Merci

1voto

Josh Homann Points 7888

Je suppose que c'est parce que votre page Web demande la localisation et que Safari est essentiellement une autre application s'exécutant à l'intérieur de votre viewcontroller. Une façon de contourner cela est de simplement ne pas demander la localisation de l'utilisateur sur votre page Web. Demandez plutôt la localisation de l'utilisateur dans l'application, puis injectez la localisation dans votre WebView avec JavaScript en utilisant evaluateJavaScript(_:completionHandler:). Évidemment, vous devez attendre d'avoir à la fois la localisation et que la page soit entièrement chargée avant de faire l'appel JavaScript.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X