He conseguido algunos stacktraces extrañas de los usuarios de mi aplicación recientemente:GCM FC/ID del remitente no se establece en el constructor de
Android Version: 2.3.5
Phone Model: GT-I9001
Stacktrace:
java.lang.IllegalStateException: sender id not set on constructor
at com.google.android.gcm.GCMBaseIntentService.getSenderIds(GCMBaseIntentService.java:125)
at com.google.android.gcm.GCMBaseIntentService.onHandleIntent(GCMBaseIntentService.java:237)
at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:59)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.os.HandlerThread.run(HandlerThread.java:60)
estoy usando Rev. 3 de la lib GCM y en relación a la documentación que el SenderId es ya no es necesario que el constructor lo apruebe (fue así en tiempos de C2DM); también esto no se cuelga en mis dispositivos ni en los dispositivos de muchos otros usuarios. ¿Alguien puede arrojar luz sobre lo que está sucediendo en estos dispositivos y, idealmente, tiene alguna solución alternativa? Un GCM no trabajo para estos usuarios sería una opción para mí como dispositivo de empuje es opcional - pero no quiero que se caiga ..
Editar aquí es la fuente utilizada: https://github.com/ligi/gobandroid/blob/master/src/org/ligi/gobandroid_hd/GCMIntentService.java
gracias por su respuesta, pero no he sobrescrito este constructor aquí es la fuente https://github.com/ligi/gobandroid/blob/master/src/org/ligi/gobandroid_hd/GCMIntentService.java también la doc aquí: http://developer.android.com/guide/google/gcm/gs.html no menciona nada sobre sobrescribir getSenderIds – ligi
Si tiene instalados los extras de GCM, tendrá acceso al código fuente de GCMBaseIntentService.java, Echa un vistazo a ese archivo y eso es lo que se menciona en el código fuente. – azgolfer
Todavía no estoy al 100% sobre todo esto, pero acepto y voto su respuesta ya que estoy agradecido por ello. – ligi