Android Studio-импорт внешней библиотеки / Jar


недавно я загрузил Android Studio для разработки приложений для Android (я пришел из Eclipse), и у меня возникли проблемы с использованием внешних библиотек и/или внешних файлов JAR вместе с моим собственным проектом. Примечание: следующие тесты были проведены на новая проект приложения, созданный с нуля в Android Studio.

Пример 1: импорт банок.

  1. загрузите новую копию ADMOBS SDK из Гуглить.

  2. скопировать jar библиотеки GoogleAdMobAdsSdk-6.4.1.jar в папку /libs / проекта.

  3. в окне проекта щелкните правой кнопкой мыши на вновь добавляемых библиотеки.банки и нажмите кнопку Добавить в библиотеку.

технически на данный момент все работает импорт работает просто отлично, редактор макета показывает предварительный просмотр 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 62

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.

  1. перетащите файл jar под libs.
  2. Нажмите кнопку" Синхронизировать проект с файлами Gradle".

enter image description here

"простое решение здесь"

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:

  1. перетащить jar файл в папку libs.
  2. щелкните правой кнопкой мыши и выберите Добавить Библиотеку теперь файл jar-это библиотека, позволяющая добавить его в путь компиляции
  3. открыть build.gradle файл (обратите внимание, что есть два build.gradle файлы по крайней мере, не используйте корневой, используйте тот, который находится в области вашего проекта).
  4. найти раздел зависимостей (для меня я пытался использовать файл jar admob-GoogleAdMobAdsSdk) например,

    dependencies {
       compile files('libs/android-support-v4.jar','libs/GoogleAdMobAdsSdk-6.3.1.jar')
    }
    
  5. последний раз были в settings.gradle и убедитесь, что это выглядит примерно так:

    include ':yourproject', ':yourproject:libs:GoogleAdMobAdsSdk-6.3.1'
    
  6. наконец, перейти к 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 в проект:

    под Файлы-->Структура Проекта
  1. нажмите 'F4'
  2. в разделе "навигация по проекту" щелкните правой кнопкой мыши на любой библиотеке 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')

В Android Studio (мой 2.3.1) перейдите в файл-структура проекта:

enter image description here

проверьте требования к версии libs. Lib может пытаться вызвать метод из более высокой версии Android. Попробуйте добавить библиотеки совместимости приложений.

когда все остальное не удается, попробуйте переключиться с сборки Gradle на сборку Eclipse.

удалите и реструктурируйте свои папки в стиле eclipse и удалите все, кроме вашего кода. Затем перезагрузите проект с помощью своих библиотек.

Как только он запустится, вернитесь в Gradle, если хотите.