Este plugin proporciona información sobre la ubicación del dispositivo, tales como la latitud y longitud. Fuentes comunes de información de localización incluyen el sistema de posicionamiento Global (GPS) y ubicación deducido de las señales de la red como dirección IP, direcciones de RFID, WiFi y Bluetooth MAC y celulares GSM/CDMA IDs. No hay ninguna garantía de que la API devuelve la ubicación real del dispositivo.
Esta API se basa en la Especificación de API de geolocalización W3C y sólo se ejecuta en dispositivos que ya no proporcionan una implementación.
ADVERTENCIA: recopilación y uso de datos de geolocalización plantea cuestiones de privacidad importante. Política de privacidad de su aplicación debe discutir cómo la aplicación utiliza los datos de geolocalización, si se comparte con cualquiera de las partes y el nivel de precisión de los datos (por ejemplo, código postal grueso, fino, nivel, etc.). Datos de geolocalización es generalmente considerados sensibles porque puede revelar paradero del usuario y, si está almacenado, la historia de sus viajes. Por lo tanto, además de política de privacidad de la app, fuertemente considere dar un aviso de just-in-time antes de la aplicación tiene acceso a datos de geolocalización (si el sistema operativo del dispositivo ya no hacerlo). Que el aviso debe proporcionar la misma información mencionada, además de obtener un permiso del usuario (por ejemplo, presentando opciones para Aceptar y No gracias). Para obtener más información, por favor consulte a la guía de privacidad.
Este plugin define un global navigator.geolocation
objeto (para plataformas donde falta lo contrario).
Aunque el objeto está en el ámbito global, características proporcionadas por este plugin no están disponibles hasta después de la deviceready
evento.
document.addEventListener ("deviceready", onDeviceReady, false); function onDeviceReady() {console.log ("navigator.geolocation funciona bien");}
Cordova plugin agregar cordova-plugin-geolocation
Devuelve la posición actual del dispositivo a la geolocationSuccess
“callback” con un Position
objeto como parámetro. Si hay un error, el geolocationError
“callback” pasa un PositionError
objeto.
navigator.geolocation.getCurrentPosition (geolocationSuccess, [geolocationError], [geolocationOptions]);
geolocationSuccess: la devolución de llamada que se pasa a la posición actual.
geolocationError: (opcional) la devolución de llamada que se ejecuta si se produce un error.
geolocationOptions: (opcional) las opciones de geolocalización.
onSuccess Callback / / este método acepta un objeto Position, que contiene el / / coordenadas GPS actual / / var onSuccess = function(position) {alert (' latitud: ' + position.coords.latitude + '\n' + ' longitud: ' + position.coords.longitude + '\n' + ' altitud: ' + position.coords.altitude + '\n' + ' exactitud: ' + position.coords.accuracy + '\n' + ' altitud exactitud: ' + position.coords.altitudeAccuracy + '\n' + ' hacia: ' + position.coords.heading + '\n' + ' velocidad: ' + position.coords.speed + '\n' + ' Timestamp: ' + position.timestamp + '\n');}; onError Callback recibe un objeto PositionError / / function onError(error) {alert (' código: ' + error.code + '\n' + ' mensaje: ' + error.message + '\n');} navigator.geolocation.getCurrentPosition (onSuccess, onError);
Devuelve la posición actual del dispositivo cuando se detecta un cambio de posición. Cuando el dispositivo recupera una nueva ubicación, el geolocationSuccess
devolución de llamada se ejecuta con un Position
objeto como parámetro. Si hay un error, el geolocationError
devolución de llamada se ejecuta con un PositionError
objeto como parámetro.
var watchId = navigator.geolocation.watchPosition (geolocationSuccess, [geolocationError], [geolocationOptions]);
geolocationSuccess: la devolución de llamada que se pasa a la posición actual.
geolocationError: (opcional) la devolución de llamada que se ejecuta si se produce un error.
geolocationOptions: opciones (opcional) la geolocalización.
navigator.geolocation.clearWatch
para dejar de ver a los cambios de posición.onSuccess Callback / / este método acepta un objeto 'Position', que contiene / / coordenadas GPS de la corriente / / function onSuccess(position) {var elemento = document.getElementById('geolocation'); element.innerHTML = ' latitud: ' + position.coords.latitude + ' < br / >' + ' longitud: ' + position.coords.longitude + ' < br / >' + ' < hr / >' + element.innerHTML; } / / onError Callback recibe un objeto PositionError / / function onError(error) {alert (' código: ' + error.code + '\n' + ' mensaje: ' + error.message + '\n');} Opciones: tira un error si no se recibe ninguna actualización cada 30 segundos. var watchID = navigator.geolocation.watchPosition (onSuccess, onError, { timeout: 30000 });
Parámetros opcionales para personalizar la recuperación de la geolocalizaciónPosition
.
{ maximumAge: 3000, timeout: 5000, enableHighAccuracy: true };
enableHighAccuracy: proporciona una pista que la aplicación necesita los mejores resultados posibles. De forma predeterminada, el dispositivo intentará recuperar un Position
usando métodos basados en red. Al establecer esta propiedad en true
dice el marco a utilizar métodos más precisos, como el posicionamiento satelital. (Boolean)
tiempo de espera: la longitud máxima de tiempo (en milisegundos) que está permitido el paso de la llamada a navigator.geolocation.getCurrentPosition
o geolocation.watchPosition
hasta el correspondiente geolocationSuccess
devolución de llamada se ejecuta. Si el geolocationSuccess
no se invoque “callback” dentro de este tiempo, el geolocationError
devolución de llamada se pasa un PositionError.TIMEOUT
código de error. (Tenga en cuenta que cuando se utiliza en conjunción con geolocation.watchPosition
, el geolocationError
“callback” podría ser llamado en un intervalo cada timeout
milisegundos!) (Número)
maximumAge: aceptar un puesto en la memoria caché, cuya edad no es mayor que el tiempo especificado en milisegundos. (Número)
Emuladores Android 2.x no devuelva un resultado de geolocalización a menos que el enableHighAccuracy
opción se establece entrue
.
Deja de ver cambios en la ubicación del dispositivo al que hace referencia el watchID
parámetro.
navigator.geolocation.clearWatch(watchID);
watchPosition
para despejar. (String)Opciones: ver los cambios en la posición y usar más / / exacta posición disponible del método de adquisición. var watchID = navigator.geolocation.watchPosition (onSuccess, onError, { enableHighAccuracy: true }); ... después de... navigator.geolocation.clearWatch(watchID);
Contiene Position
coordenadas y timestamp, creado por la API de geolocalización.
coordenadas: un conjunto de coordenadas geográficas. (Coordenadas)
timestamp: fecha y hora de creación coords
. (DOMTimeStamp)
A Coordinates
objeto está unido a un Position
que está disponible para funciones de retrollamada en las solicitudes para la posición actual del objeto. Contiene un conjunto de propiedades que describen las coordenadas geográficas de posición.
Latitude: latitud en grados decimales. (Número)
longitud: longitud en grados decimales. (Número)
altitud: altura de la posición en metros por encima del elipsoide. (Número)
exactitud: nivel de precisión de las coordenadas de latitud y longitud en metros. (Número)
altitudeAccuracy: nivel de precisión de las coordenadas de altitud en metros. (Número)
Dirección: dirección del recorrido, especificado en grados contando hacia la derecha en relación con el norte verdadero. (Número)
velocidad: velocidad actual del dispositivo especificado en metros por segundo. (Número)
altitudeAccuracy: no compatible con dispositivos Android, regresandonull
.
altitudeAccuracy: no compatible con dispositivos Android, regresandonull
.
El PositionError
objeto se pasa a la geolocationError
función de devolución de llamada cuando se produce un error con navigator.geolocation.
code: uno de los códigos de error predefinido enumerados a continuación.
mensaje: mensaje de Error que describe los detalles del error encontrado.
PositionError.PERMISSION_DENIED
PositionError.POSITION_UNAVAILABLE
PositionError.TIMEOUT
timeout
incluido en geolocationOptions
. Cuando se utiliza con navigator.geolocation.watchPosition
, este error podría pasar repetidamente a la geolocationError
“callback” cada timeout
milisegundos.