it-swarm.com.de

Android Studio - Externe Bibliothek / Jar importieren

Ich habe vor kurzem Android Studio heruntergeladen, um Android Anwendungen zu entwickeln (ich komme von Eclipse)), und ich habe Probleme mit der Verwendung externer Bibliotheken und/oder externer JAR-Dateien neben meinem eigenen Projekt. [~ # ~] note [~ # ~]: Die folgenden Tests wurden an einem neu Anwendungsprojekt durchgeführt, das von Grund auf in = erstellt wurde Android Studio.

Beispiel 1: JAR-Import.

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

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

  3. Klicken Sie im Projektexplorer mit der rechten Maustaste auf die neu hinzugefügte Datei library.jar und klicken Sie auf Als Bibliothek hinzufügen.

Technisch gesehen funktionieren zu diesem Zeitpunkt alles funktioniert die Importe einwandfrei, der Layout-Editor zeigt eine Vorschau des Widgets AdView und all das. Das only Problem ist, dass es nicht erfolgreich kompiliert wird.

Protokoll von der Konsole:

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, obwohl die Klassen erfolgreich sowohl im Code- als auch im Design-Editor importiert werden konnten, die Importe zur Kompilierungszeit nicht aufgelöst werden können. Hier ist der relevante Teil des Protokolls: ( 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 auch hier funktionieren die Importe im Editor gut, und die Abhängigkeit ist da:

enter image description here

Es ist auch erwähnenswert, dass die Projekte ohne den Versuch, eine Bibliothek/JAR hinzuzufügen, einwandfrei 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')
}

Dieses Mal wurde die Kompilierung erfolgreich durchgeführt, aber die App erzwingt nun das Schließen, da anscheinend keine bestimmte Klasse aus der Bibliothek im Anwendungspaket gefunden werden 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?

62
daniel_c05

So,

Befolgen Sie die folgenden Schritte, um eine JAR-Datei mit Android Studio 0.1.1) erfolgreich in Ihr Projekt zu importieren:

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

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

  • Datei -> Projekt schließen
  • Öffnen Sie eine Eingabeaufforderung im Stammverzeichnis Ihres Projekts, z. B. 'C:\Users\Username\AndroidStudioProjects\MyApplicationProject\'.
  • Geben Sie an der Eingabeaufforderung gradlew clean Ein und warten Sie, bis der Vorgang abgeschlossen ist.
  • Öffnen Sie Ihr Anwendungsprojekt erneut in Android Studio.
  • Führen Sie Ihre Anwendung aus, und es sollte erfolgreich funktionieren.
99
daniel_c05

Sie müssen das Projekt nicht schließen und zur Befehlszeile gehen, um grade: clean aufzurufen. Gehen Sie zu Build-> Rebuild Project

31
Tej

Einfacher Weg und es funktioniert bei mir. Verwenden von Android Studio 0.8.2.

  1. Ziehen Sie die JAR-Datei unter libs.
  2. Klicken Sie auf die Schaltfläche "Projekt mit Gradle-Dateien synchronisieren".

enter image description here

16
aknay

"einfache Lösung ist hier"

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

2 .Kopieren Einfügen Ihre Bibliothek in libs Ordner

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!

13
Odaym

Hier ist, wie ich es speziell für die admob sdk jar -Datei zum Laufen gebracht habe:

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

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

    include ':yourproject', ':yourproject:libs:GoogleAdMobAdsSdk-6.3.1'
    
  6. Schließlich gehen Sie zu Build -> Rebuild Project
10
j2emanue

wenn Sie das Projekt aus Eclipse exportieren und dann aus Android Studio importieren, sollte dies Ihr Problem lösen, öffnen Sie ein Eclipse-Projekt, ohne es aus Android Studio zu importieren kann zu Problemen führen, siehe: (Entschuldigung, ich spreche Spanisch.) http://developer.Android.com/intl/es/sdk/installing/migrate.html

2
Heberth

Ich hatte das Problem, dass ich die JAR-Datei im libs-Ordner in Android Studio nicht laden konnte. Wenn Sie die JAR-Datei im libs-Ordner hinzugefügt haben, öffnen Sie einfach die build.gradle - Datei und speichern Sie sie ohne Wenn Sie diese Zeile hinzugefügt haben

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

speichern Sie es und bereinigen Sie das Projekt. In der nächsten Erstellungszeit lädt Android Studio die JAR-Datei.

Hoffe das hilft.

2
IMRA

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

3 Möglichkeiten, Ihrem Projekt ein neues Jar 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 'Open Library Settings'.

Ein Projektstrukturfenster wird eingeblendet.

Klicken Sie in der linken Spalte auf "Bibliotheken" und dann im rechten Fensterbereich auf das Pluszeichen "+". 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 wird möglicherweise ein fehlerhafter Link angezeigt, wenn Sie Ihren Projektquellcode speichern.

1
Gilson

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 Bibliotheken der Support-Versionen 4 und 13 zu importieren.

Ich hoffe das ist hilfreich und räumt den Strom auf.

1
Satish Garg

Ich benutze Android Studio 0.8.6 und zum Importieren einer externen Bibliothek in ein Projekt, füge diese Bibliothek in den libs-Ordner und in den build.gradle-Schreibpfad dieser Bibliothek in Abhängigkeiten wie dieser Kompilierdatei ein ('libs/google-play-services.jar ')

0

In Android Studio (meins ist 2.3.1) gehen Sie zu Datei - Projektstruktur:

enter image description here

0
Zon