AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Funciones estándar / Funciones de geolocalización
  • Casos especiales
  • Required permissions
WINDEV
WindowsLinuxJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac Catalyst
Otros
Procedimientos almacenados
Pide ser notificado cuando el dispositivo se acerca a una ubicación determinada.
Ejemplo
// Enable the notification request
GPSDetectPosition(DetectionProc, 1.145258, 30.968745)
// Procedure called during the notification
PROCÉDURE DetectionProc(Enter is boolean)
IF Enter = True THEN
Info("You have reached your destination.")
END
Sintaxis
<Result> = GPSDetectPosition(<WLanguage procedure> , <Latitude> , <Longitude> [, <Radius> [, <Timeout>]])
<Result>: Integro
Identificador de detección.
Este identificador se utiliza en los siguientes casos:
  • para detener el mecanismo de notificación. Basta con pasar este identificador como parámetro a GPSStopDetection.
  • para identificar la ubicación procesada en el procedimiento WLanguage llamado (caso en el que el mismo procedimiento WLanguage se utiliza para procesar varias ubicaciones).
<WLanguage procedure>: Nombre del procedimiento
Nombre del procedimiento WLanguage (procedimiento "callback") llamado cuando el dispositivo entra o sale de la región delimitada por los parámetros especificados..
Para obtener más información sobre este procedimiento, consulte Parámetros del procedimiento utilizado por la función GPSDetectPosition.
<Latitude>: Real
Latitud del lugar de proximidad.
<Longitude>: Real
Longitud del lugar de proximidad.
<Radius>: Real opcional
Radio (en metros), alrededor de la ubicación de proximidad, a partir del cual debe generarse la notificación..
Si no se especifica este parámetro, el radio alrededor de la ubicación se fijará en 50 metros.
<Timeout>: Entero o duración opcional
Tiempo de espera (en centésimas de segundo) de la alerta de proximidad. Este tiempo de espera comienza a partir de la llamada a la función.
  • No se definirá ningún tiempo de espera si este parámetro se establece en -1 o si no se especifica.
  • Si se especifica este tiempo de espera, el mecanismo de notificación se detendrá automáticamente al final del tiempo de espera.
Este parámetro puede corresponder a:
  • un número entero que corresponde al número de centésimas de segundo,
  • una variable de tipo Duration,
  • la duración en un formato legible (por ejemplo, 1 s o 10 ms).
Observaciones

Casos especiales

  • Para dejar de recibir notificaciones, utilice GPSEnd..
  • Para dejar de detectar la proximidad de un lugar concreto;
    • devolver Falso en el procedimiento WLanguage asociado,
    • utilice la función GPSStopDetection..
  • Puede detectar la proximidad a varios lugares llamando a GPSDetectPosition para cada lugar. Si se llama al mismo procedimiento para varias ubicaciones, es posible diferenciar dichas ubicaciones en el procedimiento WLanguage con el parámetro <Identificador de detección>. Este parámetro corresponde al resultado de GPSDetectPosition.
  • Las mediciones de localización pueden ser más o menos precisas en función de los parámetros del proveedor de localización. Por lo tanto, puede ocurrir que no se envíe ninguna notificación si el dispositivo pasa brevemente cerca de la zona vigilada. Del mismo modo, se puede recibir una notificación si el dispositivo se acerca mucho a la zona vigilada sin entrar en ella.
AndroidWidget Android

Required permissions

This function changes the permissions required by the application.
Permission required: ACCESS_FINE_LOCATION.
Android 11 specific case: This function requires the ACCESS_BACKGROUND_LOCATION permission to access the device's location.
This permission allows using the function when the application is in the background.
If the application needs to use background location:
  • Manually add the "ACCESS_BACKGROUND_LOCATION" permission in the Android application generation wizard.
  • Explicitly request background location permission with PermissionRequest. For example:
    PermissionRequest(permBackgroundLocation, Callback)
    INTERNAL PROCEDURE Callback(p is Permission)
    	IF p.Granted THEN
    		// Functions that require background location access can be used
    	END
    END
A window allows users to:
  • allow access to the device location while the application is in the background,
  • allow access to the location only while the application is in use,
  • deny access to the location. The user can also change these permissions at any time in the Android settings.

Remarks:
  • Follow Google's guidelines for applications that require background location access. For more details, see https://support.google.com/googleplay/android-developer/answer/9799150. If these conditions are not met (especially user information requirements), applications may not be accepted for publication on Google Play.
  • The background location permission should only be requested if the location permission has been granted. Otherwise, PermissionRequest will fail.
  • If the option chosen by the user for the background location access request is more restrictive than the option chosen for the location access request, the application will be automatically restarted.
  • On devices running Android 10 or earlier, if location permission has been granted to the application, the background location permission will be granted without displaying a window.
Clasificación Lógica de negocio / UI: Lógica de negocio
Componente: wd300java.dll
Versión mínima requerida
  • Versión 15
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 24/09/2024

Señalar un error o enviar una sugerencia | Ayuda local