GCM: java.lang.noclassdeffounderror: com.google.android.gcm.GCMRegistrar

Ich versuche, ein Gerät auf GCM mit dem folgenden Code zu registrieren:

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"); } 

Ich habe import import import com.google.android.gcm.GCMRegistrar;
Und auch hinzugefügt GCM.jar zu meinem buildpath in Eclipse, die ich durch die sdk Download bekam

  • Wie man Rückblick schickt? Wie kann ich das z-order programmgesteuert steuern?
  • Senden von HTTP Post Request mit Android
  • Org.apache.http.client.ClientProtocolException
  • Warum beendet mein ProgressDialog, wenn ich auf Aktivität klicke?
  • Erstellen Sie vertikale Steigung in Android
  • Zeige Fehler auf der Spitze des Edit Text Android
  • Bitte helfen Sie!

  • Android Studio - Gradle Sync Fehler
  • Wie man mathematische Gleichungen in Android macht
  • XML-Attribute bestellen in Android Studio
  • Android - Bildschirmorientierung lädt die Aktivität neu
  • Was ist mit Ergebnisfehlern von SmsManager gemeint?
  • Wie zu fliesen und scrollen ein großes Bild (10000x10000) in Android
  • 10 Solutions collect form web for “GCM: java.lang.noclassdeffounderror: com.google.android.gcm.GCMRegistrar”

    In der aktualisierten ADT (über ADT 17) müssen Sie jar Dateien in libs Ordner und nicht lib . So stellen Sie sicher, dass Sie gcm.jar Datei in libs und nicht lib Ordner.

    Gehen Sie einfach zu den Projekt-Eigenschaften -> java build Pfad -> "bestellen und exportieren" jetzt giv ein Häkchen auf die JAR-Datei "GCM.jar", die Sie hinzugefügt haben

    Mein gcm.jar war schon in libs, also war es kein Ordner namens Problem für mich ..

    Ich musste nach Right Click > Build Path > Configure Build path... für das Projekt in Frage und ich entfernte folgendes:

    • Alle verbleibenden Dateien außerhalb eines Ordners / Bündels
    • Android Private Libraries
    • Alle Bündel mit dem Wort "Referenz" in ihnen (Sie können nicht eine haben)

    Sie können eine Menge "Fehler" in Ihrem Projekt bekommen, so dass Eclipse neu starten und es sauber machen. Sobald es reinigt, haben Sie keine Fehler. Führen Sie Ihr Projekt und Viola.

    Danke an DLew für diese Antwort.

    Machen Sie einen Ordner libs in Ihrem Projektordner und legen Sie die gcm.jar darin. Fügen Sie es dann zu Ihrem Klassenpfad hinzu, indem Sie externe Gläser hinzufügen , um die Pfadoption zu konfigurieren .

    Du musst die Datei gcm.jar in libs setzen und gehe dann zu Project Properties> Java Build Path> Bibliotheken und füge es zu deinem Pfad hinzu, indem du externe JARs eintippst … , nach dem Auftrag und dem Export du gcm.jar checkst und auf OK klickst. Das sollte funktionieren

    Stellen Sie sicher, dass die gcm-JAR-Datei im rechten libs-Ordner ist und in den Java-Build-Pfad bei Ihren Projekteigenschaften hinzugefügt wird.

    Ich hatte das gleiche Problem, nach Update SDK in meinem Projekt. Es hat mir geholfen: Ich habe nur "Support-Bibliothek" in "Android-Tools" hinzugefügt. Hoffe das hilft jedem anderen.

    Ich habe auch das gleiche Problem, nach dem Hinzufügen von android-support-v4.jar und gcm.jar in meine libs Ordner keine Probleme fanden seine Arbeit wie ein Charme

    Vielen Dank

    Das SENDER_ID-Feld sollte die Projekt-ID sein, wenn Sie Ihr Google-AIP-Projekt erstellt haben. Lesen Sie den Anfang davon: http://developer.android.com/guide/google/gcm/gs.html#libs

    TAG sollte auch ein String sein -> "" Tag Name "

    Hallo Du benutzt alte GCM-Implementierungen, um neue Implementierungen unter https://developers.google.com/cloud-messaging/android/start zu verwenden

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.