Estoy usando la API de geolocalización para detectar la ubicación del usuario. Ahora quiero obtener la ubicación del usuario en el teléfono inteligente. He leído el hilo sobre Establecí el permiso de geolocalización en el manifiesto, pero cada página aún solicita compartir la ubicación . Pero tiene 8 años. ¿Es posible obtener la ubicación del usuario en el teléfono inteligente? ¿Debo escribir el Manifiesto para cada navegador?
Este es mi código para esto:
<script> const geoinfo = document.getElementById("geoinfo"); // not necessary thanks to IE quirk but good practice navigator.geolocation.getCurrentPosition = function(success, error, options) { ... }; if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(function (position) { const { latitude, longitude, altitude } = position.coords; //geoinfo.innerHTML = `Breitengrad: ${latitude}, Längengrad: ${longitude}`; if (altitude) geoinfo.innerHTML += `, Höhe über Meeresspiegel: ${altitude}`; // send to server sendData(latitude, longitude); }); } else { geoinfo.innerHTML = 'Dieser Browser unterstützt die Abfrage der Geolocation nicht.'; } async function sendData(lat, long) { const response = await fetch(`?lat=${lat}&long=${long}`); // send data to this script, regardless of filename if (response.ok) { const text = await response.text(); if (text == "received") alert("Geodaten erfolgreich zum Server gesendet."); } } </script>Solo funciona en PC de escritorio....
¿Este código que encontré en el documento no funciona?
var options = { enableHighAccuracy: true, timeout: 5000, maximumAge: 0 }; function success(pos) { var crd = pos.coords; console.log('Your current position is:'); console.log(`Latitude : ${crd.latitude}`); console.log(`Longitude: ${crd.longitude}`); console.log(`More or less ${crd.accuracy} meters.`); }; function error(err) { console.warn(`ERROR(${err.code}): ${err.message}`); }; navigator.geolocation.getCurrentPosition(success, error, options);