Estoy edificio de la aplicación con la que puede obtener la ubicación utilizando NETWORK_PROVIDER periódicamente en segundo plano sin necesidad de utilizar GPS_PROVIDER. Estoy usando ALARM_SERVICE y WakeLock(PARTIAL_WAKE_LOCK). pero el problema que estoy enfrentando es que la conexión a internet se desconecta una vez que la pantalla se apague. cuando me desbloquea el teléfono, me empieza a recibir la ubicación, pero cuando la pantalla se apaga no estoy recibiendo los lugares.

Es porque:

  1. Conexión a Internet se pone en pausa una vez que la pantalla se apague y también cuando me desbloquea la pantalla me sale el USSD mensajes de código de Uso de Datos, por lo que no significa que mi conexión a internet se apagará una vez que la pantalla se apague?
  2. Aunque la conexión a internet está activada pero la ubicación no se actualiza en segundo plano como la pantalla está en estado de apagado.

Yo estoy usando el GpsTracker clase para obtener la localización de aquí y el uso de AlarmManager obtener la ubicación periódicamente. también en LatLongBroadcastReceiver clase i am a buscar una ubicación.

Intent intent = new Intent(GPSlatlongActivity.this,
                    LatLongBroadcastReceiver.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK
        | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);

pendingIntent = PendingIntent.getBroadcast(
        GPSlatlongActivity.this.getApplicationContext(), 0, intent,
        PendingIntent.FLAG_UPDATE_CURRENT);

alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
alarmManager.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP,
        SystemClock.elapsedRealtime(),
        (AlarmManager.INTERVAL_FIFTEEN_MINUTES / 15),
        pendingIntent);
  • Están realizando pruebas en real del dispositivo? Algunas de las aplicaciones utilizadas para el ahorro de batería como juiceDefender vueltas de internet móvil apagado cuando la pantalla está bloqueada. Por favor revise si cualquier aplicación instalada en el dispositivo
  • sí, yo soy la prueba en el dispositivo real. probado en 4-5 dispositivo. No hay tal instalada la aplicación que hará una pausa de conexión a internet cuando la pantalla se apaga.
  • Si he entendido bien, tu pregunta es: «¿Es posible que mi dispositivo se desconecta de internet cuando la pantalla se bloquea?» Asumiendo que su ubicación lógica de trabajo, es que la formulación exacta?
  • ¿Tratas de poner algo extra de registro de salida en el código, y conectar el dispositivo de depuración usb? Debe tener un bonito tiro recto en averiguar si la conexión está activa, o si algo va mal.
  • sí a la derecha. existe alguna solución para esto? estoy luchando con el problema por la mitad de un mes. Por favor, hágamelo saber si alguna solución para esto.

2 Comentarios

  1. 5

    A menos que su aplicación tiene una muy buena razón para mantener una conexión Wi-Fi, usted realmente debe tratar de respetar las preferencias del usuario para desactivar el WiFi cuando la pantalla se bloquea. Su aplicación va a causar rápidamente el dispositivo para que consuma mucha más energía por el uso de cualquier tipo de bloqueo. Como se ha mencionado por otros, en su caso, tendrá el PowerManager.PARTIAL_WAKE_LOCK para mantener la CPU ejecuta (sin impedir la pantalla de bloqueo) y WifiManager.WakeLock para mantener la conexión Wi-Fi conectado.

    Usted probablemente encontrará la configuración causando este comportamiento en el sistema de configuración de Wi-Fi, en virtud de la configuración Wi-Fi avanzada:

    Conexión a Internet en pausa después de Android de bloqueo del teléfono

    Si se inhabilita esta configuración en un dispositivo móvil de datos, su ubicación en la red de escucha aún debe funcionar como Android seguirá uso de Ubicación de Google API en el fondo para resolver la ubicación del dispositivo basado en torres celulares.

    Si su dispositivo es también la desconexión de datos en el móvil, tal vez algunos de ahorro de energía de la aplicación es la inhabilitación. BlueEFFICIENCY y Juice Defender son algunas de las aplicaciones que tienen una opción para esta optimización, pero HTC y Sony han incluido algunos de ahorro de energía
    opciones en sus dispositivos, que también puede ser que presentan este comportamiento.

  2. 5

    De acuerdo a la documentación WifiManager.WifiLock

    Permite a una aplicación para mantener la radio Wi-Fi despierto. Normalmente la radio Wi-Fi puede apagar cuando el usuario no utiliza el dispositivo en un tiempo. La adquisición de un WifiLock mantendrá la radio hasta que se libere el bloqueo. Varias aplicaciones pueden mantener WifiLocks, y la radio sólo se permitirá apagar cuando no WifiLocks se celebran en cualquier aplicación.

    Supongo que necesita este bloqueo. Adquirir este bloqueo si el dispositivo está conectado a wi-fi. Pero por favor

    Nota que WifiLocks no puede invalidar el nivel de usuario de «Wi-Fi» de configuración, ni Modo Avión. Simplemente mantenga el radio se apague cuando el Wi-Fi ya está, pero el dispositivo está inactivo.

    • hola M-WaJeEh, Gracias por responder. es este mantenga android CPU ejecuta?
    • Si he utilizado PowerManager.FULL_WAKE_LOCK entonces me está dando de actualización de la ubicación, pero si he utilizado PowerManager.PARTIAL_WAKE_LOCK. el uso de FULL_WAKE_LOCK pantalla se encienda y me da actualizado el lugar, pero no quiero hacer de pantalla en. es por eso que he utilizado PARTIAL_WAKE_LOCK, después de que me estoy haciendo ubicación actualizada cuando la pantalla se apaga. Por favor me ayude. gracias en asvance
    • Uso PowerManager.PARTIAL_WAKE_LOCK con WifiManager.WifiLock.

Dejar respuesta

Please enter your comment!
Please enter your name here