Obtener ubicación aproximada

Para respetar la privacidad del usuario, se alienta a los desarrolladores de apps a solicitar únicamente las direcciones generales permisos de ubicación. Por lo general, las apps que necesitan una posición aproximada aproximada usa la ubicación de red (FLP), ya que es rápida y consume menos energía.

En comparación con los dispositivos móviles basados en Android, la ubicación de red en las aplicaciones para automóviles puede ser más desafiante. Puedes usar dos APIs de Android:

  • En la API de LocationManager, se requiere que identifiques explícitamente proveedor de ubicación.

  • La API de Servicios de Google Play te ofrece una manera más simplificada de trabajar con la ubicación mediante la introducción del proveedor de ubicación combinada (FLP).

Muchas apps para automóviles usan FLP de la API de Google Play Services (GPS) en lugar de LM. FLP selecciona el proveedor de ubicación óptimo en función de la solicitud de ubicación y las políticas (potencia y precisión) que necesita el vehículo.

En su lugar, puedes optar por solicitar y usar NETWORK_PROVIDER en LM, así como GPS_PROVIDER para posiciones precisas, que utiliza android.permission.ACCESS_FINE_LOCATION permisos. En el nivel de API 31, el FUSED_PROVIDER, antes accesible solo a través de la API de GPS, ahora disponible como proveedor de ubicación para LM. Puedes ver un panorama más sencillo implementación de FLP, en FusedLocationProvider.java

Si bien es posible usar GPS_PROVIDER solo con derechos de permiso generales, el framework degrada la exactitud de forma artificial para alinearse con las expectativas, no tiene mucho sentido para los desarrolladores que se orientan a teléfonos Android porque, en general, La disponibilidad es baja y, a menudo, es más lenta para obtener una posición aproximada.

Ubicación de la red en la industria automotriz

El NETWORK_PROVIDER que se usa en teléfonos Android (con Servicios de Google para dispositivos móviles) tiene pasó de determinar la ubicación solo en función de las torres de telefonía cercanas a usan puntos de acceso Wi-Fi o incluso balizas Bluetooth (BT). Uso de Es posible que NETWORK_PROVIDER requiera una conexión de datos.

En el caso de las apps para vehículos, las restricciones de los dispositivos son diferentes. Como el GNSS suele estar activado, no se generarán penalizaciones por el aumento del uso de batería y energía. Como como resultado, el tiempo de actividad de IVI no se ve comprometido. Nos esforzamos por minimizar el intercambio de datos con nuestros servidores.

Por lo tanto, muchas apps usan FLP de la API de Play en lugar de LM directamente como FLP. hace automáticamente las tareas inteligentes mediante el uso del proveedor de ubicación más adecuado para cumplen con los criterios o las políticas de solicitud de ubicación (a saber, potencia y precisión) según el capó.

A diferencia de los dispositivos móviles, rara vez los vehículos parecen saltar de un lugar a con el otro. La mayoría de las veces se conoce la posición del vehículo debajo del capó.

Proveedor de ubicación de red

La mayoría de los vehículos no implementan las APIs de telefonía necesarias para obtener la información necesaria en un ID de celular (y la intensidad de la señal). Como resultado, y debido a que minimizamos los datos no se proporciona ninguna implementación funcional adicional de PLN.

Proveedor de ubicación combinada

El proveedor de telefonía móvil (FLP) móvil, además de usar de manera inteligente proveedores de red y GPS, apropiado, fusiona información de otros sensores para mejorar aún más la la calidad de las ubicaciones. La implementación actual de FLP de Automotive en la se aprovecha las suposiciones antes mencionadas y usa GPS_PROVIDER como fuente subyacente todo el tiempo Mueve las posiciones desde GNSS, agregando algunos errores para que sean más imprecisos cuando sea necesario. Por ejemplo: cuando se proporcionan ubicaciones comunes a un cliente.

Por lo tanto, en muy pocos casos, el tiempo para la actualización puede ser más largo de lo habitual primera posición estén disponibles. Por ejemplo, la primera vez que un vehículo para ser más precisos, se utiliza su subsistema de ubicación o después de un remolque.

Diseñar aplicaciones orientadas a usos móviles y automotores

Recomendamos que las aplicaciones orientadas a dispositivos móviles y para la industria automotriz y que no requieren una mayor calidad de solicitud de precisión android.permission.ACCESS_COARSE_LOCATION únicamente y volver a usar FLP cuando estén disponibles. Como alternativa, como último recurso, usa GPS_PROVIDER directamente. con los mismos permisos. El framework degrada la precisión del Posición del GNSS para alinearse con las expectativas de la API. Para obtener más información, consulta Precisión.

Además, estas apps deben declarar explícitamente el android.hardware.location.network la función opcional en su manifiesto. Por ejemplo:

<uses-feature android:name="android.hardware.location.network" android:required="false" />

Este enfoque garantiza la máxima compatibilidad con dispositivos de verticales. así, la disponibilidad máxima de las apps sin diferencias de código para obtener cuando sea necesario.