Estoy desarrollando una aplicación GCM. Todo funciona bien cuando el dispositivo no está inactivo (es decir, durmiendo presionando el botón de encendido). Sin embargo, cuando envío el mensaje cuando el dispositivo está inactivo, el dispositivo no se activa.GCM no se está despertando dispositivo
he hecho las siguientes:
- verificado que delay_while_idle no se establece en true en la aplicación del servidor
- utilizado una clave para ocultar diferente para cada mensaje
- reinicia el dispositivo varias veces
- Intentó omitir el delay_while_idle completamente del lado del servidor - no tiene efecto
I apuntar a Android 2.2 api nivel 8 (versión más baja), probando en un dispositivo real con Android 2.3.6
El dispositivo está utilizando wi-fi, no hay tarjeta SIM, pero recibe mensajes finos mientras se ejecuta y no está inactivo.
Esta es la sección permiso manifiesta cliente:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<permission
android:name="com.tranwall.sdk.device.android.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="basePackage.android.permission.C2D_MESSAGE" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.INTERNET" />
Gracias de antemano por cualquier ayuda
Hola koti, tengo la configuración similar para el receptor de difusión y el servicio de intención: solo publiqué la sección de permisos de mi manifiesto. La aplicación cliente funciona perfectamente cuando el dispositivo no está inactivo. Puedo ver en el registro que incluso cuando está inactivo el mensaje fue recibido, el único problema es el hecho de que el mensaje push entrante no despierta el dispositivo – Will777
Entonces en modo inactivo también está recibiendo un mensaje significa que está llamando al método onMessage() de servicio allí puede escribir algún código de activación que se encuentra en esta publicación http://stackoverflow.com/questions/5215367/android-how-can-i-wake-up-the-phone-from-a-hard-sleep- to-take-a-picture – koti
Gracias, voy a intentar hacer eso. Tenía la impresión de que las bibliotecas del cliente de GCM reactivarían el dispositivo cuando llegue el mensaje. – Will777