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
  • Modo de funcionamiento en iPhone/iPad
  • Permisos necesarios
  • Funcionalidad de aplicación requerida
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Inicializa los parámetros de las funciones de geolocalización de WLanguage y busca un proveedor de ubicación.
Para definir la posición del dispositivo, tiene la posibilidad de utilizar dos tipos de "proveedores de localización":
  • la red de satélites GPS.
  • la triangulación realizada desde la red de antenas móviles y Wi-Fi.
Cada proveedor se diferencia por la precisión de su información, su consumo de energía y la configuración de hardware requerida (presencia de un chip GPS, acceso a INTERNET, etc.).
Ejemplo
AndroidWidget Android
// Find a location provider that can give information about the speed
// consuming an average amount of energy and providing a high level of precision
GPSInitParameter(gpsAuto, gpsPrecisionHigh + gpsSpeed + gpsEnergyMedium)
Sintaxis
GPSInitParameter(<Provider to find> [, <Options>])
<Provider to find>: Constante de tipo Integer
Tipo de proveedor de la ubicación solicitada.
gpsAutoDefine el proveedor más adecuado según los criterios especificados en el parámetro .
gpsNetworkCalcula la posición utilizando la red de antenas móviles o Wi-Fi.
gpsSatelliteCalcula la posición utilizando la red de satélites GPS.

WINDEViPhone/iPadIOS WidgetMac Catalyst Este parámetro no se tiene en cuenta.
<Options>: Combinación opcional de constantes de tipo Integer
Criterios de selección para el proveedor de la ubicación.
AndroidWidget Android Este parámetro se utiliza si el parámetro <Proveedor buscado> corresponde a la constante gpsAuto. En los demás casos, se ignora .
Los valores posibles son:
gpsAltitudeIndica si el proveedor debe poder especificar la altitud del dispositivo.
WINDEV Esta constante no está disponible.
gpsDirectionIndica si el proveedor debe poder especificar la dirección de movimiento del dispositivo.
WINDEV Esta constante no está disponible.
gpsEnergyHighIndica si el proveedor puede requerir una gran cantidad de energía.
WINDEV Esta constante no está disponible.
gpsEnergyLowIndica si el proveedor debe requerir una cantidad baja de energía.
WINDEV Esta constante no está disponible.
gpsEnergyMediumIndica si el proveedor puede requerir una cantidad media de energía.
WINDEV Esta constante no está disponible.
gpsPrecisionHighLa posición se calcula con gran precisión.
gpsPrecisionLowLa posición se calcula con poca precisión.
gpsSpeedIndica si el proveedor debe ser capaz de especificar la velocidad de desplazamiento.
WINDEV Esta constante no está disponible.

Observaciones:
  • Las constantes gpsPrecisionxx son exclusivas entre sí.
  • Las constantes gpsEnergyxx son exclusivas entre sí.
  • No se requiere ninguna constante. Si no se especifica ninguna constante, la función buscará un proveedor de localización que consuma la menor cantidad de energía con precisión y sin características específicas.
Observaciones

Casos especiales

  • AndroidWidget Android Puede get la disponibilidad de un proveedor de geolocalización mediante GPSStatus.
  • AndroidWidget Android Para get las características del proveedor de ubicación inicializado por GPSInitParameter , use GPSInfo 030002f002300 .
  • Dependiendo del tipo de dispositivo en el que se inicie la aplicación, puede que no haya un proveedor que corresponda a todos los criterios especificados (sin chip GPS, sin acceso a INTERNET, ...).
    Si ningún proveedor corresponde a los criterios especificados, estos criterios se ignoran uno tras otro hasta que se obtiene un proveedor válido de acuerdo con el siguiente orden: consumo de energía, precisión, dirección, velocidad y altitud.
  • Las funciones de geolocalización pueden, según la configuración seleccionada y la frecuencia de llamada, consumir muchos recursos en el dispositivo (batería, ancho de banda, etc.).. Se debe llamar a GPSEnd cuando las funciones de localización ya no son utilizadas por la aplicación.
  • Si se llama a una función de geolocalización, pero los parámetros aún no han sido definidos por GPSInitParameter , la aplicación intentará utilizar primero la ubicación GPS y luego la red de antena móvil si el sistema GPS no está disponible.
  • Las funciones GPS no se pueden utilizar para realizar una geolocalización en interiores.: el posicionamiento no puede realizarse únicamente a través de puntos de acceso Wi-Fi.
iPhone/iPadIOS WidgetMac Catalyst

Modo de funcionamiento en iPhone/iPad

Cuando se ejecuta por primera vez una función GPS, el sistema solicita la geolocalización Permission al usuario. Si el usuario se niega, todas las funciones GPS utilizadas en el resto de la aplicación fallarán (error fatal)..
Para volver a permitir el uso de GPS para esta aplicación, se debe modificar la configuración del sistema de la aplicación..
AndroidWidget Android

Permisos necesarios

La llamada a esta función modifica los permisos requeridos por la aplicación.
Requerido Permission: ACCESS_FINE_LOCATION.
Caso específico de Android 11: Esta función requiere la Permission ACCESS_BACKGROUND_LOCATION para acceder a la ubicación del dispositivo.
Esta Permission permite utilizar la función cuando la aplicación está en la Background.
Si la aplicación necesita utilizar la ubicación de Background:
  • Agregar manualmente el permiso "ACCESS_BACKGROUND_LOCATION" en el asistente de generación de la aplicación Android.
  • Solicitar explícitamente la ubicación de fondo Permission con PermissionRequest. Por ejemplo:
    PermissionRequest(permBackgroundLocation, Callback)
    INTERNAL PROCEDURE Callback(p is Permission)
    IF p.Granted THEN
    // Functions that require background location access can be used
    END
    END
Una ventana permite a los usuarios:
  • permitir el acceso a la ubicación del dispositivo mientras la aplicación está en la Background,
  • permitir el acceso a la ubicación sólo mientras la aplicación está en uso,
  • negar el acceso a la ubicación. El usuario puede cambiar estos permisos en cualquier momento en la configuración de Android.

Observaciones:
  • Siga las directrices de Google para las aplicaciones que requieren acceso a la ubicación de Background. Para obtener más información, consulte https://support.google.com/googleplay/android-developer/answer/9799150. Si no se cumplen estas condiciones (especialmente los requisitos de información del usuario), es posible que no se acepte la publicación de las aplicaciones en Google Play.
  • La ubicación de fondo Permission sólo debe solicitarse si se ha concedido la ubicación Permission. De lo contrario, PermissionRequest fallará.
  • Si la opción elegida por el usuario para la solicitud de acceso a la localización de Background es más restrictiva que la opción elegida para la solicitud de acceso a la localización, la aplicación se reiniciará automáticamente.
  • En los dispositivos con Android 10 o anterior, si se ha concedido la ubicación Permission a la aplicación, se concederá la ubicación de fondo Permission sin mostrar una ventana.
Universal Windows 10 App

Funcionalidad de aplicación requerida

Cuando se utiliza esta función, se debe declarar una funcionalidad de la aplicación en el asistente de generación de aplicaciones.
Característica necesaria: Geolocalización
Esta característica permite a las aplicaciones acceder a las características de geolocalización que se encuentran en el dispositivo o en el equipo.
Componente: wd290java.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: 23/06/2023

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