Android Studio - Importowanie zewnętrznej biblioteki / słownika

Niedawno pobrałem Android Studio, aby tworzyć aplikacje na Androida (pochodzę z Eclipse) i mam problemy z używaniem zewnętrznych bibliotek i / lub zewnętrznych plików JAR obok mojego własnego projektu.UWAGA: następujące testy przeprowadzono na aNowy projekt aplikacji stworzony od podstaw w Android Studio.

Przykład 1: Import JAR.

Pobierz nową kopię zestawu Admobs SDK z Google.

Skopiuj słoik bibliotekiGoogleAdMobAdsSdk-6.4.1.jar do folderu / libs /.

W eksploratorze projektu kliknij prawym przyciskiem myszy nowo dodaną bibliotekę.jar i kliknij „Dodaj jako bibliotekę”.

Technicznie w tym momenciewszystko działa poprawnie, import działa dobrze, edytor układu wyświetla podgląd plikuAdView widget i to wszystko. Thetylko Problem polega na tym, że nie kompiluje się pomyślnie.

Zaloguj się z konsoli:

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'.

Próbowałem biegaćgradlew compileDebug --stacktracei wydaje się, że problem polega na tym, że pomimo możliwości pomyślnego zaimportowania klas w edytorze kodu i projektu, w czasie kompilacji nie może rozwiązać importu. Oto odpowiednia część dziennika: (tutaj pełny stacktrace)

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

Ale znowu, import działa dobrze w edytorze, a zależność jest tam:

Warto również zauważyć, że bez próby dodania biblioteki / pliku JAR projekty dobrze się kompilują.

Następnie próbowałem edytować plik build.gradle, dodając nową bibliotekę, taką jak ta:

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

Tym razem kompilacja zakończyła się pomyślnie, ale aplikacja teraz zamyka się, jak widać, nie może znaleźć konkretnej klasy z lib w pakiecie aplikacji.

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

Jakieś pomysły?

questionAnswers(12)

yourAnswerToTheQuestion