¿Ha cambiado el comportamiento NETWORK_PROVIDER en Android 4.1.1?

Tengo una aplicación bien probada existente que utiliza el GPS_PROVIDER y NETWORK_PROVIDER con el mismo LocationListener .

LocationManager informa de que los proveedores de ubicación gps, red y pasivos están disponibles y habilitados.

Recientemente he actualizado mi Galaxy Nexus a 4.1.1 y ahora NETWORK_PROVIDER no entrega ningún cambio de ubicación. Pruebas con un Galaxy S III corriendo 4.0.4 funciona como estoy acostumbrado a, con las actualizaciones de ubicación de red llegando a través, incluso si WiFi está apagado. Cuando WiFi está apagado, consigo la posición de la torre de la célula.

Hablando con colegas aquí, no puedo descartar algún tipo de fallo de hardware coincidente o algún tipo de cambio de configuración por defecto que no he encontrado. He revisado dos veces la configuración y parece que todo está correctamente configurado.

WiFi está encendido, la red de la célula está encendido, el GPS está encendido, los servicios de red están todos permitidos. No tengo señal GPS en mi escritorio, por lo que es fácil de notar cuando la ubicación de la red no proporciona un resultado.

¿Alguien más se encuentra con problemas similares con Verizon Galaxy Nexus + 4.1.1, o 4.1.1 y cualquier teléfono?

Como una arruga adicional, Google Maps está encontrando mi ubicación, pero mi PASSIVE_PROVIDER no está generando una ubicación tampoco.

El comportamiento de Android no ha cambiado con respecto a NETWORK_PROVIDER .

No sé qué salió mal o por qué, pero he eliminado / reemplazado la batería y la tarjeta SIM en mi Galaxy Nexus y el proveedor de la red parece estar proporcionando los resultados correctos.

¿La lección para mí? No asuma que alguna vez recibirá una ubicación informada a su oyente, incluso si está seguro de que el proveedor de red está disponible, habilitado y conectado.

En mi caso, necesitaré agregar otro cheque para asegurarse de que mi LocationListener no siga funcionando si no obtengo ninguna ubicación reportada.

He leído la suposición de alguien sobre este problema. Es "En algunos dispositivos si no hay actualización después de la solicitud, entonces un proveedor de red no da una devolución de llamada".

Considere esa posibilidad.

En mi caso, utilizo un getLastKnownLocation() antes de iniciar un seguimiento de ubicación actual. Intente ctrl + f getLastKnownLocation en este artículo .

  • Intervalo de actualización en requestLocationUpdates
  • Ubicación de Google Play No conectado. Llame a connect () y espere a que onConnected () se llame
  • Cambiar la ubicación de descarga predeterminada
  • Obtener la ubicación actual nombre de la ciudad, android
  • Android - Obtener ubicación sólo una vez
  • No puede resolver el símbolo 'LocationServices'
  • Cómo obtener el número de satélites del objeto Ubicación
  • Obtener la lista de lugares que rodean la ubicación actual del usuario
  • Obtener ubicación GPS a través de un servicio en Android
  • Cómo implementar onConnectionFailed () y onDisconnected () para un servicio de ubicación
  • Obtener el radio del mapa visible en Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.