Ich versuche, Google Play Services mit dem neuen Android Studio zu testen. Ich habe ein Projekt mit einer Abhängigkeit von google_play_services.jar. Wenn ich jedoch versuche, das Projekt neu zu erstellen, werden folgende Fehler angezeigt:
Information:[TstGP3-TstGP3] Crunching PNG Files in source dir: C:\Users\ans\AndroidStudioProjects\TstGP3\TstGP3\src\main\res
Information:[TstGP3-TstGP3] To destination dir: C:\Users\ans\AndroidStudioProjects\TstGP3\build\classes\res-cache\TstGP3-TstGP3
Information:Compilation completed with 2 errors and 0 warnings in 2 sec
Information:2 errors
Information:0 warnings
C:\Users\ans\.AndroidStudioPreview\system\compiler\tstgp3.3f17bd41\.generated\Android_BuildConfig_Generator\TstGP3-TstGP3.74fc5b25\production\com\example\tstgp3\BuildConfig.java
Error:Error:line (4)error: duplicate class: com.example.tstgp3.BuildConfig
C:\Users\ans\.AndroidStudioPreview\system\compiler\tstgp3.3f17bd41\.generated\aapt\TstGP3-TstGP3.74fc5b25\production\com\example\tstgp3\R.java
Error:Error:line (10)error: duplicate class: com.example.tstgp3.R
Es scheint, dass es zwei BuildConfig-Dateien und auch zwei R-Klassen hat. Wie kann ich das Problem beheben?
BEARBEITEN:
Ich habe festgestellt, dass der Compiler zwei R.java-Dateien kompiliert: die in meinem Projektordner und eine im Ordner% USERPROFILE% .AndroidStudioPreview. Daher habe ich versucht, diesen Ordner "Preview" in den Compilereinstellungen auszuschließen und jetzt funktioniert es. Dieses Problem tritt erst auf, nachdem ich begonnen habe, Google Play Services-Klassen in meinem Projekt zu verwenden. Ich würde mich freuen, wenn jemand den Grund für dieses Problem erklären kann.
quelle
Antworten:
Alle diese Antworten sind falsch, da mit der Veröffentlichung des Gradle-Plugins v0.4.2 die Einrichtung von Google Play-Diensten unter Android Studio unkompliziert ist. Sie müssen kein JAR importieren oder eine Projektbibliothek hinzufügen oder ein neues Modul unter Android Studio hinzufügen. Sie müssen der Datei build.gradle die richtigen Abhängigkeiten hinzufügen. Bitte schauen Sie sich diese Links an: Gradle Plugin v0.4.2 Update , New Build System und dieses Beispiel
Der richtige Weg dazu ist wie folgt:
Zunächst müssen Sie den SDK-Manager starten und die folgenden Dateien unter "Extras" herunterladen und installieren: Android-Support-Repository , Google Play-Dienste , Google-Repository .
Starten Sie Android Studio neu und öffnen Sie die Build-Gradle-Datei. Sie müssen Ihre build.gradle-Datei so ändern, dass sie unter Abhängigkeiten so aussieht:
Und schließlich synchronisieren Sie Ihr Projekt (die Schaltfläche links neben dem AVD-Manager).
Seit Version 6.5 können Sie die gesamte Bibliothek (sehr groß) oder nur die benötigten Module (Best Option) einbinden. Wenn Sie nur Google Maps und Analytics benötigen, können Sie das vorherige Beispiel durch das folgende ersetzen:
Die vollständige Abhängigkeitsliste finden Sie hier
Einige Randnotizen:
Bereinigen Sie nach einem umfassenden Update von Android Studio Ihr Projekt, indem Sie die nächsten Anweisungen befolgen, wie in den Kommentaren von @ user123321 vorgeschlagen
CD in Ihren Projektordner
./gradlew clean
./gradlew build
quelle
Voila! Keine Notwendigkeit mit Gradle zu kämpfen :)
quelle
EDITIERT: Dieser Typ hat es wirklich nach Hause gebracht und hat ein gutes kleines Tutorial http://instantiatorgratification.blogspot.com/2013/05/google-play-services-with-android-studio.html
eine Randnotiz: Ich hatte so viel herumgespielt, dass ich eine machen musste
gradlew clean
, damit es erfolgreich liefWenn Sie Ihr Projekt importiert haben oder aus der Beispielkartenanwendung unter \ extras \ google \ google_play_services \ samples \ maps arbeiten, lesen Sie dieses Tutorial.
https://stackoverflow.com/a/16598478/2414698
Wenn Sie ein neues Projekt von Grund auf neu erstellen, beachten Sie die Kommentare von Xav zu demselben Beitrag. Er beschreibt, dass Android Studio einen anderen Compiler verwendet und dass Sie die Datei build.gradle manuell ändern müssen. Ich habe das mit Erfolg gemacht. Ich habe kopiert
in mein lib-Verzeichnis und fügte meiner build.gradle-Datei Folgendes hinzu
Wenn dies ein neues Projekt ist, lesen Sie auch diesen Beitrag.
https://stackoverflow.com/a/16671865/2414698
quelle
Die meisten dieser Antworten befassen sich nur mit Abhängigkeiten zur Kompilierungszeit. Zur Laufzeit finden Sie jedoch eine Vielzahl von NoClassDef-Ausnahmen. Das liegt daran, dass Sie mehr als die Datei google-play-services.jar benötigen. Es verweist auf Ressourcen, die Teil des Bibliotheksprojekts sind und die nicht korrekt enthalten sind, wenn Sie nur das Jar haben.
Was für mich am besten funktioniert hat, war, zuerst das Projekt in Eclipse richtig einzurichten. Lassen Sie Ihr Projekt so strukturieren, dass es sowohl Ihre App als auch die Bibliothek enthält, wie hier beschrieben: http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Multi-project-setup
Exportieren Sie dann Ihr App-Projekt aus Eclipse und importieren Sie es wie hier beschrieben in Android Studio: http://developer.android.com/sdk/installing/migrate.html . Stellen Sie sicher, dass Sie sowohl Ihr App-Projekt als auch das Google Play Services-Bibliotheksprojekt exportieren. Beim Import erkennt es das Bibliotheksprojekt und importiert es als Modul. Ich habe gerade alle Standardeinstellungen während des Projektimportprozesses akzeptiert.
quelle
Google Play Services Integration in Android Studio.
Schritt 1:
Schritt 2:
Schritt 3:
Schritt 4:
Schritt 5:
Bitte geben Sie einen Kommentar ab, wenn Sie Hilfe benötigen. Viel Spaß beim Codieren.
quelle
Keine der oben genannten Lösungen hat bei mir funktioniert. Ich bin mir nicht sicher, ob es für mein Setup oder meine neue Version spezifisch ist.
Ich verwende Android Studio Beta 0.8.9 und habe keinen com.google.android.gms: Play-Service in der Bibliotheksliste erhalten, wenn ich diese Anweisung befolge:
Ich hatte das schon gemacht:
Das Problem bestand darin, im SDK-Manager "Google Play Services für Froyo" hinzuzufügen und dann den ersten Schritt zu wiederholen.
Ich habe den Grund nicht richtig verstanden, aber das hat funktioniert.
PS: Ich habe gerade bemerkt, dass dies auch jetzt nicht der Fall ist, wenn ich nach Spieldiensten suche, aber wenn ich direkt scrolle und durch die Liste schaue, ist es genau dort.
quelle
Folgen Sie diesem Artikel -> http://developer.android.com/google/play-services/setup.html
Sie sollten Verwenden von Android Studio wählen
Beispiel Gradle-Datei:
Die neueste Version von Google Play Services finden Sie hier: https://developer.android.com/google/play-services/index.html
quelle
Ich habe dies funktioniert, nachdem ich Folgendes getan habe:
Hinweis: Dies gibt mir auch keine Laufzeitausnahmen, es funktioniert.
quelle
Öffnen Sie Ihre Projektdatei build.gradle und fügen Sie die folgende Zeile unter dem Modul Abhängigkeiten hinzu.
Im Folgenden werden Google Analytics und Maps hinzugefügt, wenn Sie keine vollständige Bibliothek integrieren möchten
quelle
In meinem Fall werden google-play-services_lib als Modul (Externe Bibliotheken) für Google Map & GCM in mein Projekt integriert.
Diese Zeit erfordert die Implementierung der Google Places Autocomplete-API. Das Problem ist jedoch, dass der Code neu und meine Bibliotheken alt sind, sodass einige Klassen nicht gefunden werden:
Befolgen Sie diese Schritte ...
1> Aktualisieren Sie den Google Play-Dienst in SDK Manager
2> Wählen Sie eine neue JAR-Datei des Google Play-Dienstes aus ( Sdk / extras / google / google_play_services / libproject / google-play-services_lib / libs) ) und ersetzen Sie diese durch eine alte
Ich habe Erfolg ... !!!
quelle
Ich habe die Play Libs-Dateien aus der google-play-services_lib in mein Projekt Libs-Verzeichnis kopiert:
Wählen Sie sie dann aus und klicken Sie mit der rechten Maustaste auf "Als Bibliotheken hinzufügen".
quelle