Código JavaScript:
var x = document.getElementById("x"); document.getElementById('button').onclick = function() { function showPosition(position) { console.log("in showPosition"); x.innerHTML = "Latitude: " + position.coords.latitude + "<br>Longitude: " + position.coords.longitude; } alert("button was clicked"); console.log("sdfghj"); if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(showPosition); console.log("in if "); }else { x.innerHTML = "Geolocation is not supported by this browser."; console.log("in else "); } }Pero la ventana emergente de solicitud de permiso nunca se abre. Código de aleteo:
import 'package:flutter/material.dart'; import 'package:webview_flutter/webview_flutter.dart'; class WebViewStack extends StatefulWidget { const WebViewStack({Key? key}) : super(key: key); @override State<WebViewStack> createState() => _WebViewStackState(); } void main() { runApp( const MaterialApp( home: WebViewStack(), ), ); } class _WebViewStackState extends State<WebViewStack> { var loadingPercentage = 0; @override Widget build(BuildContext context) { return Stack( children: [ WebView( javascriptMode: JavascriptMode.unrestricted, initialUrl: 'example.com', ), ], ); } }Estoy trabajando en un proyecto que necesita obtener la ubicación actual del usuario mediante la geolocalización HTML 5. Pero necesito saber por qué WebView no muestra mi ubicación actual. ¿Qué tengo que hacer para mostrar el mapa y la ubicación actual en WebView?
Si su pregunta es sobre la falta de permisos, debe usar un complemento como Permission Handler : https://pub.dev/packages/permission_handler Lea el archivo Léame y listo. :)