Android no recibe actualizaciones de ubicación cuando la pantalla está bloqueada

Mi aplicación tiene que rastrear al usuario continuamente. Para eso tengo un LocationListener que se supone para recibir actualizaciones de la localización continuamente. El problema es cuando la pantalla está apagada, no recibe ninguna actualización.

He intentado agregar un bloqueo parcial de la estela:

 mLocationRequest = LocationRequest.create(); mLocationRequest.setInterval(LocationUtils.UPDATE_INTERVAL_IN_MILLISECONDS); mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY); mLocationRequest.setFastestInterval(LocationUtils.FAST_INTERVAL_CEILING_IN_MILLISECONDS); mLocationClient = new LocationClient(ADS.getAppContext(), new LocationGatherer(), new LocationGatherer()); mLocationClient.connect(); PowerManager pm = (PowerManager) ADS.getAppContext().getSystemService(Context.POWER_SERVICE); PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "My Tag"); wl.acquire(); 

Pero todavía no recibe actualizaciones.

Sólo chocó con el mismo problema. Yo también tenía el mismo código aunque estaba dentro de un servicio. Extrañamente no funcionó. Conectado a mi portátil y ejecuta un comando mencionado en la aplicación Android uso de CPU alto, sin servicios o wakelocks :

 adb shell dumpsys power |grep -i wake 

De repente, las actualizaciones de localización comenzaron a llegar (el botón de encendido había sido presionado y la pantalla estaba apagada).

Realmente no tengo ni idea de lo que podría haber sido el problema, pero que lo solucionó para mí.

A partir de ahora, recibir actualizaciones de ubicación incluso cuando la pantalla está apagada.

  • ¿Traer la aplicación al frente, activar la visualización y desbloquear desde AlarmManager?
  • ¿Debería llamar a WakeLock antes de crear una notificación?
  • ¿Cómo deshabilitar el botón de encendido?
  • Si un wakelock es adquirido y mi aplicación se bloquea, ¿qué debo hacer?
  • ¿Cómo despertar android y mostrar la actividad?
  • Pantalla tenue mientras el usuario está inactivo
  • AlarmManager y WakeLock
  • ¿Cómo las notificaciones necesitan WAKE_LOCK en android?
  • BroadcastReceiver, Servicio y Wakelock
  • StandBy como actividad
  • WakeLock bajo bloqueo GCM_LIB
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.