gcm - push notifications android firebase
GCM: java.lang.noclassdeffounderror: com.google.android.gcm.GCMRegistrar (10)
Estoy tratando de registrar un dispositivo en GCM usando el siguiente código:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
GCMRegistrar.checkDevice(this);
// the following function can be removed when deploying the app
GCMRegistrar.checkManifest(this);
final String regId = GCMRegistrar.getRegistrationId(this);
if (regId.equals("")) {
GCMRegistrar.register(this, SENDER_ID);
} else {
Log.v(TAG, "Already registered");
}
He importado import com.google.android.gcm.GCMRegistrar;
y también agregué GCM.jar a mi ruta de acceso de compilación en Eclipse que obtuve a través de la descarga de SDK
Por favor ayuda !
Asegúrate de que el archivo gcm jar esté en la carpeta de libs correcta y se agregue a la ruta de compilación de java en las propiedades de tu proyecto.
Cree una carpeta libs en su carpeta de proyecto y coloque gcm.jar en ella. Luego, agréguelo a la ruta de su clase usando la opción para configurar la ruta de compilación .
Debe colocar el archivo gcm.jar dentro de las bibliotecas , luego ir a Propiedades del proyecto > Java Build Path> Libraries y agregarlo a su ruta usando Add JARs externos ... , luego en Order and Export , verifique gcm.jar y presione OK . Eso debería funcionar
El campo SENDER_ID debe ser el ID del proyecto cuando creó su proyecto de Google Api. Lea el principio de esto: http://developer.android.com/guide/google/gcm/gs.html#libs
TAG también debe ser una cadena -> "" Nombre de etiqueta "
En el ADT actualizado (arriba del ADT 17), debe colocar los archivos jar en la carpeta libs
y no en lib
. Así que asegúrate de poner el archivo gcm.jar
dentro de libs
y no en la carpeta lib
.
Hola. Está utilizando implementaciones de GCM antiguas, e implementaciones nuevas disponibles en https://developers.google.com/cloud-messaging/android/start
Mi gcm.jar
ya estaba en libs, por lo que no era un problema de nombre de carpeta para mí ...
Tuve que ir a Right Click
> Build Path
> Configure Build path...
para el proyecto en cuestión y eliminé lo siguiente:
- Cualquier archivo persistente fuera de una carpeta / paquete
-
Android Private Libraries
- Cualquier paquete con la palabra ''referencia'' en ellos (es posible que no tenga uno)
Puede obtener muchos "errores" en su proyecto, así que reinicie Eclipse y deje que se limpie. Una vez que se limpie no tendrás errores. Ejecuta tu proyecto y viola.
Gracias a DLew por esta respuesta.
Simplemente vaya a las propiedades del proyecto -> ruta de compilación java -> "ordenar y exportar" ahora haga una marca en el archivo jar "GCM.jar" que ha agregado
También tuve el mismo problema, después de agregar android-support-v4.jar
y gcm.jar
en mi carpeta libs, no hubo ningún problema que encontró su trabajo como un encanto
Gracias
Tuve el mismo problema, después de actualizar el SDK en mi proyecto. Me ayudó: acabo de "agregar biblioteca de soporte" en "herramientas de Android". Espero que esto ayude a alguien más.