2014-01-12 5 views
5

Ich habe die Prozedur wie hier beschrieben verfolgt: Setup Ich habe auf die kleine 'Sync Projekt mit Gradle' Schaltfläche geklickt. Gradle und Android Studio scheinen zu finden, aber dann kann ich nicht wirklich den gms-Code verwenden. Wenn ich versuche zu importieren, werde ich für com.google.android.gms automatisch vervollständigen, aber nicht weiter. Ich habe alle Pakete mit Android SDK Manager aktualisiert.Wie importiere ich com.google.android.gms. * In Android Studio mit einem Gradle-Build?

  • Ich betreibe Android Studio 0.4.2.
  • Mein minSdk bis 9
  • gesetzt ist mein build.gradle enthält kompilieren 'com.google.android.gms: Play-Dienste: 4.0.30'

Was das Verfahren angeht, ich sollte bereit sein zu programmieren, aber es funktioniert einfach nicht. Irgendwelche Ideen?

[Bearbeiten, hinzugefügt info]

ich die ComGoogleAndroiddGmsPlayServices3265.aar Datei in meinem explodierte Bündel Verzeichnis finden. Innerhalb dieser Datei finde ich auch das gemeinsame Verzeichnis und darin finde ich die GooglePlayServicesUtil.class (das ist, was nicht in meiner App gefunden wird)

Ich bin verloren.

[Edit 2]

Das Problem ist nicht spezifisch für Google Play-Dienste oder Android-Studio. Ich habe versucht, eine weitere Bibliothek (HoloColorPicker) hinzuzufügen und hatte die gleichen Ergebnisse. Ich konnte jedoch die Ressourcen der Bibliothek meinem Projekt hinzufügen! Ich konnte sie in meine XML-Layouts einfügen und sie in meiner Anwendung anzeigen. Ich konnte mit ihnen interagieren, sie funktionierten gut. Das Problem trat erneut auf, als ich versuchte, sie im Code zu referenzieren. Genau wie im Falle von gms hatte ich Code-Vervollständigung, wenn ich versuchte, bis zu dem Punkt der tatsächlichen Klasse zu importieren, und ich konnte die Klasse im Code nicht deklarieren.

Ich konnte die Bibliothek verwenden, indem ich sie klonen und das Projekt importiere.

Auch dies ist kein Android Studio Problem, weil die gleiche Sache auf der Kommandozeile geschieht mit „./gradlew bereinigter Build“

+0

Welchen Service möchten Sie anrufen/benutzen? –

+0

Ich versuche Karten zu verwenden. Genauer gesagt versuche ich com.google.android.gms.common zu importieren. * – MikeWallaceDev

+0

Funktioniert es nach einem sauberen Build? Wir erfassen diesen Fehler, der möglicherweise auf Sie zutrifft: https://code.google.com/p/android/issues/detail?id=64508 –

Antwort

13

Dies ist ein aktueller Fehler in Android Studio: https://code.google.com/p/android/issues/detail?id=64508 diese Woche behoben werden.

Die Problemumgehung besteht darin, das Projekt zu schließen, die IML-Dateien und das IDEA-Projekt zu löschen und das Projekt erneut zu importieren.

+0

Dies war einer der frustrierendsten Bugs, die ich je gesehen habe. Die Tatsache, dass es immer noch nicht behoben ist (18FEB14), ist inakzeptabel. –

+0

@RobertGreathouse - hast du eine Gradle-Synchronisierung durchgeführt? Pro [fix] (https://android-review.googlesource.com/#/c/78729/) scheint es, als würde eine Gradle-Synchronisierung dieses Problem umgehen. – ianhanniballake

+0

Ja. Ich war die ganze Nacht über "groß in Ordnung" und die Abhängigkeiten wurden nie hinzugefügt. Ich musste die .iml und .idea Dateien/Verzeichnisse löschen. Dann, Gradle synchronisieren und presto! –

0

Ich denke, die wichtigste Frage ist, was Sie erreichen wollen. Nicht alle Codes sind in diesem Paket enthalten. Nicht einmal sicher welcher ist.

2

Halten Sie Ihre compile 'com.google.android.gms:play-services:4.0.30' als erste Zeile in build.gradle Abhängigkeiten wie

dependencies { 
     compile 'com.google.android.gms:play-services:4.0.30' 
     compile 'com.android.support:support-v4:18.0.+' 
     compile 'com.android.support:appcompat-v7:+' 

    } 

`

Datei öffnen> Projektstruktur und die folgenden Schritte aus

enter image description here

Wählen Sie Hauptmodul, in dem Sie eine Abhängigkeit hinzufügen möchten, und klicken Sie auf OK.

enter image description here

Jetzt zu importieren versuchen.

+0

Ich legte die Abhängigkeit auf die erste Zeile, wie Sie sagten. Das scheint nicht zu helfen. Wenn ich in die Projektstruktur gehe, sind die Abhängigkeiten (alle 3) tatsächlich alle da. Das wird immer seltsamer ... – MikeWallaceDev

+0

hast du auch auf Bilder geschaut. Sie müssen auch eine Abhängigkeit von der Projektstruktur hinzufügen. Dies scheint ein Fehler in Android Studio Ich habe es bereits eingereicht. Sehen Sie sich https://plus.google.com/104155298861246802294/posts/DPB6AZT7zZj – pyus13

+0

an Haben Sie Ihr Projekt auch mit Gradle synchronisiert? – pyus13

0

Wie bereits erwähnt, ist dies ein Fehler mit Android Studio. Es erkennt einfach nicht den Pfad für Klassen und zeigt Ihnen, wenn es einen Fehler gibt. Wenn Sie versuchen, zu kompilieren, werden Sie sehen, dass alles gut funktioniert.

Ein Googler sagte kürzlich, dass es in dieser Woche-Ausgabe adressiert sein wird, also, seien Sie geduldig und lassen Sie sehen, was kommt.

Die Tatsache, dass im Vorschaumodus sagen Sie uns, diese Art von Dingen, die geschehen werden :)

0

Android Studio ist verrückt ein AS ist, glaube ich. Es ist die Funktion "Modul importieren" entfernt und Sie können nur "Neues Modul" ausführen. Wenn Sie auf Eclipse entwickelt werden, müssen Sie alle Ihre Projekte Gradle vor Umstellung auf Androids Studio exportieren (WTF?)

I „IntelliJ IDEA Community Edition“ bevorzugen, obwohl es ähnlich Android Studio ist, aber es ist besser als Android Studio (zumindest bis jetzt). Sie importieren Ihr Projekt einfach als Eclipse-Format, IntelliJ IDEA erkennt Abhängigkeiten automatisch (möglicherweise müssen Sie JAR-Bibliotheken manuell importieren) und erstellen ein neues Projekt. Das getan.