Android Studio-импорт внешней библиотеки / Jar
недавно я загрузил Android Studio для разработки приложений для Android (я пришел из Eclipse), и у меня возникли проблемы с использованием внешних библиотек и/или внешних файлов JAR вместе с моим собственным проектом. Примечание: следующие тесты были проведены на новая проект приложения, созданный с нуля в Android Studio.
Пример 1: импорт банок.
загрузите новую копию ADMOBS SDK из Гуглить.
скопировать jar библиотеки
GoogleAdMobAdsSdk-6.4.1.jar
в папку /libs / проекта.в окне проекта щелкните правой кнопкой мыши на вновь добавляемых библиотеки.банки и нажмите кнопку Добавить в библиотеку.
технически на данный момент все работает импорт работает просто отлично, редактор макета показывает предварительный просмотр AdView
виджет и все такое. Элемент только проблема заключается в том, что он не компилируется успешно.
Лог из консоли:
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'.
Я пробовал использовать gradlew compileDebug --stacktrace
, и проблема, похоже, заключается в том, что, несмотря на возможность успешно импортировать классы как в редакторе кода, так и в Редакторе дизайна, во время компиляции он не может разрешить импорт. Вот соответствующая часть журнала: (полный 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
но опять же, импорт хорошо работает в редакторе, и зависимость там:
также стоит отметить, что, не пытаясь добавить библиотеку/JAR, проекты компилируются просто отлично.
затем я попытался отредактировать сборку.gradle файл, чтобы включить новый lib, как это:
dependencies {
compile files('libs/android-support-v4.jar', 'libs/GoogleAdMobAdsSdk-6.4.1.jar')
}
на этот раз он успешно скомпилировался, но приложение теперь принудительно закрывается, поскольку, по-видимому, он не может найти конкретный класс из lib в пакете приложения.
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.ads.AdView" on path: /data/app/com.foo.test-1.apk
какие идеи?
12 ответов:
и
шаги, чтобы следовать для того, чтобы импортировать банку успешно в ваш проект с помощью Android Studio 0.1.1:
- Скачать в библиотеке.jar-файл и скопируйте его в папку/ libs / внутри вашего проекта приложения.
- открыть сборки.gradle файл и редактировать свои зависимости, чтобы включить новый .jar-файл:
compile files('libs/android-support-v4.jar', 'libs/GoogleAdMobAdsSdk-6.4.1.jar')
- Файл - > Закрыть Проект
- Откройте командную строку в корне вашего проекта расположение, т. е.
'C:\Users\Username\AndroidStudioProjects\MyApplicationProject\'
- в командной строке введите:
gradlew clean
, подождите, пока это не будет сделано.- откройте проект приложения в Android Studio.
вам не нужно закрывать проект и перейти в командную строку, чтобы вызвать grade:clean. Перейти к Build - > Rebuild Project
простой способ, и это работает для меня. Использование Android Studio 0.8.2.
- перетащите файл jar под libs.
- Нажмите кнопку" Синхронизировать проект с файлами Gradle".
"простое решение здесь"
1 .Создайте папку с именем libs в каталоге приложений, если на то пошло, любой каталог в проекте..
2 .Копировать Вставить библиотека libs папку
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..
Мирный!
вот как я получил это происходит специально для admob sdk jar file:
- перетащить
jar
файл в папку libs.- щелкните правой кнопкой мыши и выберите Добавить Библиотеку теперь файл jar-это библиотека, позволяющая добавить его в путь компиляции
- открыть
build.gradle
файл (обратите внимание, что есть дваbuild.gradle
файлы по крайней мере, не используйте корневой, используйте тот, который находится в области вашего проекта).найти раздел зависимостей (для меня я пытался использовать файл jar admob-GoogleAdMobAdsSdk) например,
dependencies { compile files('libs/android-support-v4.jar','libs/GoogleAdMobAdsSdk-6.3.1.jar') }
последний раз были в
settings.gradle
и убедитесь, что это выглядит примерно так:include ':yourproject', ':yourproject:libs:GoogleAdMobAdsSdk-6.3.1'
- наконец, перейти к Build - > Rebuild Project
вы экспортируете проект из Eclipse, а затем импортируете проект из Android Studio, это должно решить вашу проблему, откройте проект eclipse без импорта его из Android Studio вы можете вызвать проблемы, посмотрите: (Извините мой язык, я говорю по-испански.) http://developer.android.com/intl/es/sdk/installing/migrate.html
у меня была проблема не в состоянии загрузить файл jar в папке libs в Android Studio. Если вы добавили файл JAR в папку libs, то просто откройте
build.gradle
файл и сохраните его без редактирования чего-либо еще. Если вы добавили эту строку
compile fileTree(dir: 'libs', include: ['*.jar'])
сохраните его и очистите проект .. В следующем времени сборки Android Studio загрузит файл JAR.
надеюсь, что это помогает.
Я использую Android Studio 0.5.2. Поэтому, если ваша версия ниже моей, мой ответ может не сработать для вас.
3 способа добавить новый файл Jar в проект:
под Файлы-->Структура Проекта
- нажмите 'F4'
- в разделе "навигация по проекту" щелкните правой кнопкой мыши на любой библиотеке java, и появится контекстное меню, а затем нажмите "Откройте Настройки Библиотеки'
Проект Появится окно структуры.
в левом столбце нажмите "библиотеки", затем посмотрите на правую панель, где есть знак плюс"+", и нажмите на нее, а затем введите путь к новой библиотеке.
убедитесь, что новая библиотека находится в папке "project\libs\" в противном случае вы можете получить неработающую ссылку при сохранении исходного кода проекта.
в настоящее время я использую Android Studio 1.4.
для импорта и добавления библиотек, я использовал следующий поток ->
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.
я использовал описанный выше подход для импорта библиотек поддержки v4 и v13.
Я надеюсь, что это полезно и очищает поток.
Я использую android studio 0.8.6 и для импорта внешней библиотеки в проект, вставьте эту библиотеку в папку libs и внутри сборки.gradle путь записи этой библиотеки внутри зависимостей, как это компиляция файлов ('libs / google-play-services.jar')
проверьте требования к версии libs. Lib может пытаться вызвать метод из более высокой версии Android. Попробуйте добавить библиотеки совместимости приложений.
когда все остальное не удается, попробуйте переключиться с сборки Gradle на сборку Eclipse.
удалите и реструктурируйте свои папки в стиле eclipse и удалите все, кроме вашего кода. Затем перезагрузите проект с помощью своих библиотек.
Как только он запустится, вернитесь в Gradle, если хотите.