Android Studio – Importieren einer externen Bibliothek / eines Glases

Ich habe kürzlich Android Studio heruntergeladen, um Android-Anwendungen zu entwickeln (ich komme aus Eclipse), und ich habe Probleme mit externen Bibliotheken und / oder externen JAR-Dateien neben meinem eigenen Projekt. Hinweis : die folgenden Tests wurden für ein neues Anwendungsprojekt ausgeführt, das in Android Studio von Grund auf neu erstellt wurde.

Beispiel 1: JAR-Import.

  1. Laden Sie eine neue Version des Admobs SDK von Google herunter.

  2. Kopieren Sie das Bibliotheksglas GoogleAdMobAdsSdk-6.4.1.jar in den Ordner / libs / des Projekts.

  3. Klicken Sie im Projekt-Explorer mit der rechten Maustaste auf die neu hinzugefügte library.jar und klicken Sie auf “Als Bibliothek hinzufügen”.

Technisch funktioniert an dieser Stelle alles , Importe funktionieren gut, der Layout-Editor zeigt eine Vorschau des AdView Widgets und all das. Das einzige Problem ist, dass es nicht erfolgreich kompiliert wird.

Von der Konsole protokollieren:

 Gradle: FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':APITests:compilePaidDebug'. > Compilation failed; see the compiler error output for details. * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Could not execute build using Gradle distribution 'http://services.gradle.org/distributions/gradle-1.6-bin.zip'. 

Ich habe versucht, gradlew compileDebug --stacktrace , und das Problem scheint zu sein, dass trotz der Fähigkeit, die classn im Code & Design-Editor, zur Kompilierzeit erfolgreich zu importieren, es die Importe nicht lösen kann. Hier ist der relevante Teil des Logs: ( vollständiger Stacktrace hier )

 java:6: error: package com.google.ads does not exist import com.google.ads.AdRequest; java:7: error: package com.google.ads does not exist import com.google.ads.AdView; java:11: error: cannot find symbol AdView mAdView; symbol: class AdView location: class MainActivity java:22: error: cannot find symbol mAdView = (AdView)this.findViewById(R.id.adView); symbol: class AdView location: class MainActivity java:23: error: cannot find symbol mAdView.loadAd(new AdRequest()); symbol: class AdRequest location: class MainActivity 5 errors :Test:compileDebug FAILED 

Aber wieder funktionieren die Importe gut im Editor, und die Abhängigkeit ist da:

Bildbeschreibung hier eingeben

Es ist auch erwähnenswert, dass ohne das Hinzufügen einer Bibliothek / JAR die Projekte gut kompiliert werden.

Ich habe dann versucht, die build.gradle-Datei so zu bearbeiten, dass sie die neue lib enthält:

 dependencies { compile files('libs/android-support-v4.jar', 'libs/GoogleAdMobAdsSdk-6.4.1.jar') } 

Diesmal hat es sich erfolgreich kompiliert, aber die App erzwingt jetzt das Schließen, da es offensichtlich keine bestimmte class aus der lib im Anwendungspaket finden kann.

 Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.ads.AdView" on path: /data/app/com.foo.test-1.apk 

Irgendwelche Ideen?

Damit,

Schritte zum Importieren einer JAR-Datei in Ihr Projekt mithilfe von Android Studio 0.1.1:

  • Laden Sie die Datei library.jar herunter und kopieren Sie sie in Ihren / libs / Ordner in Ihrem Anwendungsprojekt.
  • Öffnen Sie die Datei build.gradle und bearbeiten Sie Ihre Abhängigkeiten, um die neue .jar-Datei aufzunehmen:

compile files('libs/android-support-v4.jar', 'libs/GoogleAdMobAdsSdk-6.4.1.jar')

  • Datei -> Projekt schließen
  • Öffnen Sie eine Eingabeaufforderung für den 'C:\Users\Username\AndroidStudioProjects\MyApplicationProject\' Ihres Projekts, z. B. 'C:\Users\Username\AndroidStudioProjects\MyApplicationProject\'
  • gradlew clean Sie in der Eingabeaufforderung gradlew clean , warten Sie, bis es fertig ist.
  • Öffnen Sie Ihr Anwendungsprojekt in Android Studio erneut.
  • Testen Sie Ihre Anwendung und es sollte erfolgreich funktionieren.

Sie müssen das Projekt nicht schließen und die Befehlszeile aufrufen, um die class “clean” aufzurufen. Gehe zu Bauen-> Projekt neu erstellen

Einfacher Weg und es funktioniert für mich. Verwenden von Android Studio 0.8.2.

  1. Ziehen Sie die JAR-Datei unter libs.
  2. Klicken Sie auf “Projekt mit Gradle-Dateien synchronisieren”.

Bildbeschreibung hier eingeben

“Einfache Lösung ist hier”

1. Erstellen Sie einen Ordner mit dem Namen libs unter dem App-Verzeichnis für jedes Verzeichnis innerhalb des Projekts.

2. Kopieren Fügen Sie Ihre Bibliothek in den libs- Ordner ein

3. .You simply copy the JAR to your libs/ directory and then from inside Android Studio, right click the Jar that shows up under libs/ > Add As Library..

Frieden!

Hier ist, wie ich es speziell für die Admob SDK JAR- Datei ging:

  1. Ziehen Sie Ihre jar Datei in den libs-Ordner.
  2. Klicken Sie mit der rechten Maustaste auf die jar Datei und wählen Sie Bibliothek hinzufügen aus. Die JAR-Datei ist eine Bibliothek, die Sie zum Kompilierpfad hinzufügen können
  3. Öffnen Sie die Datei build.gradle (beachten Sie, dass es mindestens zwei build.gradle Dateien gibt, verwenden Sie nicht die Root-Datei, sondern verwenden Sie die Datei in Ihrem Projektumfang).
  4. Finden Sie den Abschnitt Abhängigkeiten (für mich habe ich versucht, die Admob -GoogleAdMobAdsSdk JAR-Datei) z

     dependencies { compile files('libs/android-support-v4.jar','libs/GoogleAdMobAdsSdk-6.3.1.jar') } 
  5. Zuletzt gehe in settings.gradle und settings.gradle sicher, dass es ungefähr so ​​aussieht:

     include ':yourproject', ':yourproject:libs:GoogleAdMobAdsSdk-6.3.1' 
  6. Schließlich gehen Sie zu Build -> Projekt neu erstellen

Sie exportieren das Projekt aus Eclipse und importieren dann das Projekt von Android Studio, dies sollte Ihr Problem lösen, ein Eclipse-Projekt öffnen, ohne es aus Android Studio zu importieren, können Sie Probleme verursachen, siehe: (Entschuldigung, ich spreche Spanisch.) http : //developer.android.com/intl/es/sdk/installing/migrate.html

Ich hatte das Problem nicht in der Lage, JAR-Datei in libs-Ordner in Android Studio zu laden. Wenn Sie die JAR-Datei im libs-Ordner hinzugefügt haben, öffnen Sie build.gradle Datei build.gradle und speichern Sie sie, ohne etwas anderes zu bearbeiten. Wenn Sie diese Zeile hinzugefügt haben

compile fileTree(dir: 'libs', include: ['*.jar'])

Speichern Sie es und säubern Sie das Projekt. In der nächsten Build-Zeit wird Android Studio die JAR-Datei laden.

Hoffe das hilft.

Ich benutze Android Studio 0.5.2. Wenn Ihre Version also niedriger ist als meine, funktioniert meine Antwort möglicherweise nicht für Sie.

3 Möglichkeiten, deinem Projekt ein neues Glas hinzuzufügen:

  1. Menü unter Dateien -> Projektstruktur
  2. Drücken Sie einfach ‘ F4
  3. Klicken Sie unter Projektnavigation mit der rechten Maustaste auf eine beliebige Java-Bibliothek und ein Kontextmenü wird angezeigt. Klicken Sie dann auf ” Bibliothekseinstellungen öffnen “.

Ein Projektstrukturfenster erscheint.

Klicken Sie in der linken Spalte auf “Bibliotheken” und dann auf den rechten Bereich, in dem sich ein Pluszeichen “+” befindet. Klicken Sie darauf und geben Sie den Pfad zu Ihrer neuen Bibliothek ein.

Stellen Sie sicher, dass sich die neue Bibliothek im Ordner “project \ libs” befindet. Andernfalls können Sie beim Speichern des Projektquellcodes einen errorshaften Link erhalten.

Ich verwende derzeit Android Studio 1.4.

Zum Importieren und Hinzufügen von Bibliotheken habe ich den folgenden Ablauf verwendet ->

 1. Press **Alt+Ctr+Shift+S** or Go to **File --> Project** Structure to open up the Project Structure Dialog Box. 2. Click on **Modules** to which you want to link the JAR to and Go to the Dependency Tab. 3. Click on "**+**" Button to pop up Choose Library Dependency. 4. Search/Select the dependency and rebuild the project. 

Ich habe den obigen Ansatz verwendet, um die Bibliotheken v4 und v13 zu importieren.

Ich hoffe, dass dies hilfreich ist und den Fluss aufräumt.

Ich benutze Android Studio 0.8.6 und für den Import externer Bibliothek im Projekt, fügen Sie diese Bibliothek in libs-Ordner und innerhalb von Build.Gradle Schreibpfad dieser Bibliothek in Abhängigkeiten wie diese kompilieren Dateien (‘libs / google-play-services.jar’)

In Android Studio (meins ist 2.3.1) gehe zu Datei – Projektstruktur:

Bildbeschreibung hier eingeben

Überprüfen Sie die lib-Versionsanforderungen. Die lib versucht möglicherweise, eine Methode von einer höheren Android-Version aufzurufen. Versuchen Sie, die Apps-Kompatibilitäts-Bibliotheken hinzuzufügen.

Wenn alles andere fehlschlägt, wechseln Sie von einem Gradle-Build zu einem Eclipse-Build.

Löschen und restrukturieren Sie Ihre Ordner in den Eclipse-Stil und löschen Sie alles außer Ihrem Code. Laden Sie dann das Projekt mit Ihren Bibliotheken neu.

Sobald es läuft, gehen Sie zurück nach Gradle, wenn Sie es wünschen.