Intereting Posts
Как установить размер предварительного просмотра камеры в квадрат в квадрате SurfaceView (например, Instagram) Android. Является ли шаблон ViewHolder автоматически реализованным в CursorAdapter? Маржа / заполнение последнего ребенка в RecyclerView Шифрование и дешифрование API Fingerprint для Android Как получить данные из класса курсора Приложение Android SIP с использованием Linphone Как добавить собственные настройки VPN с помощью Java Reflecion (Android SDK 14+) Android AutoCompleteTextView с автоматической фильтрацией пользовательских адаптеров Как увеличить список элементов из центра пинча Com.crashlytics.android.CrashlyticsMissingDependencyException во время gradle 'testDebug' в проекте студии Android Можете ли вы использовать тег слияния с фрагментами? Соглашение об именах для передачи данных через дополнительные функции в android Существует ли облегченная языковая библиотека разметки для Android? Как установить Android SDK в NetBeans 8.0 DatePicker показывает неправильное значение месяца

Как добавить проект библиотеки в Android Studio и использовать его? (Некоторые из них не вступили в силу)

Как добавить проект библиотеки в Android Studio и использовать его? (Некоторые заданные вопросы не вступают в силу) Я пытаюсь найти ответ о том, как добавить проект библиотеки в Android Studio? Или Как импортировать относительный проект в Android Studio (не банку) . Но он не работает. Он также говорит: «Ошибка получения родительского элемента для элемента: ресурс не найден, который соответствует указанному имени« Theme.Sherlock.Light ».» и т.п.

Мои инструменты sdk rev – 22.

Solutions Collecting From Web of "Как добавить проект библиотеки в Android Studio и использовать его? (Некоторые из них не вступили в силу)"

Я покажу вам, как это сделать с образцом карты.

Скажем, вы импортировали образец карты в Android Studio и создали соответствующий модуль карт .

1. Создайте модуль библиотеки Android

Вам необходимо создать дополнительный библиотечный модуль для GMS, который включает в себя все классы, необходимые для примера карты из Google API, для компиляции вашего модуля карты .

Проект библиотеки находится по адресу:

$ANDROID_SDK/extras/google/google_play_services/libproject/google-play-services_lib 

Для этого перейдите в File -> Import module и выберите местоположение, описанное выше, или местоположение вашего проекта библиотеки.

Затем используйте правильную опцию между модулем Create из существующих источников или модулем импорта из внешней модели . В моем случае это из существующих источников.

Android Studio обнаруживает каталоги src / res, насколько это хорошо.

Он также обнаруживает каталоги библиотек, которые избавят вас от ручного импорта любой банки, которую вы можете иметь в lib / (например, google-play-services.jar в моем случае).

[EDIT: он фактически сохраняет вас только в половине случаев, потому что он создает библиотеки, но не связывает их в зависимостях вашего модуля]

2. Обновите зависимости основного модуля – Модуль библиотеки

Теперь сложная часть состоит в том, что вы создали только модуль, не связанный с вашим проектом как зависимость.

Сделайте это, перейдите в File -> Project structure -> Modules

Выберите свой основной модуль, карты в моем случае и перейдите на вкладку dependencies с правой стороны. Нажмите кнопку « + и « 3. Module dependency .

Выберите модуль, от которого зависит ваш основной модуль, и нажмите «ОК».

3. Обновите зависимости основного модуля – Jars

Теперь по необъяснимой причине действия в моем модуле карт по- прежнему не могут найти классы API. Мне также необходимо вручную добавить зависимость google-play-services.jar с конфигурацией модуля (как в 2., но выберите « Библиотека» вместо зависимости от модуля );

Этот момент, безусловно, можно автоматизировать с помощью градиента, но я еще не изучил его. Когда вы используете новую среду IDE, чем меньше инструментов вы используете, тем легче отслеживать ошибки конфигурации. Я бы предложил добавить только один инструмент за раз 🙂

Следующие шаги работали для меня в Android Studio 1.3.1

Mylib1 находится в автономном проекте.

В моем проекте, который нуждается в mylib1

1) Изменить settings.gradle файл

 include ':app' include ':mylib1' ##New line project(':mylib1').projectDir = new File('../../android_lib_repo/mylib1/app/') ##New line 

Где ../../android_lib_repo/mylib1 – каталог проекта

Где ../../android_lib_repo/mylib1/app/ – это каталог модулей

2) Редактировать файл build.gradle

 dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'org.bouncycastle:bcprov-jdk16:1.46' compile 'com.google.android.gms:play-services:6.5.87' compile 'com.android.support:appcompat-v7:21.0.3' compile 'com.android.support:support-v4:21.0.3' compile project(':mylib1') ##New line } 

После того, как вы импортируете модуль библиотеки в свой проект (из того, что я понял до сих пор, ваше рабочее пространство – это проект, а проекты – это модули в студии intellij / Android),

  1. Перейдите в File -> Project structure -> Modules или select the project and hit F4.-> Modules
  2. Выберите свой «библиотечный» модуль (в среднем столбце) и вкладку зависимостей кликов (в правой колонке)
  3. Установите флажок (Экспорт) перед именем модуля. (Проверь это)
  4. Теперь выберите «ваш» модуль и щелкните знак «+» в левой панели и выберите «3. Зависимости модулей …», выберите проект «Библиотека» и нажмите «ОК».
  5. Скомпилируйте свои модули сейчас.

Если вы по-прежнему видите ошибки в своем проекте, говорящие, что не можете найти классы из проекта «library», убедитесь, что вы проверяете флажок «export» напротив модуля в зависимости от вашего модуля. Надеюсь, это поможет 🙂

Для тех, кто может просто найти это. Если вам нужен доступ к ресурсам проекта библиотеки (как и для АБС), убедитесь, что вы добавили проект библиотеки / модуль как «зависимость модуля» вместо «Библиотека».

Если вы используете проект, созданный в Studio или проект, экспортированный из ADT в Gradle, вам нужно будет изменить build.gradle для изменения зависимостей. Пользовательский интерфейс в диалоговом окне «Структура проекта» влияет только на зависимости в среде IDE, но воля использует Gradle, у которой не будет настройки зависимостей.

Редактирование build.gradle заставит Studio перезагрузить его, обновив зависимости в обоих местах.

Для получения дополнительной информации о зависимостях и многомодульной настройке (в случае, если вы также добавляете модуль как зависимость), ознакомьтесь с http://tools.android.com/tech-docs/new-build-system/user-guide # TOC-Зависимость Android-библиотека-и-Multi-проекты настройка

Редактирование зависимостей библиотеки через графический интерфейс не рекомендуется, так как это не записывает эти изменения в файл build.gradle. Таким образом, ваш проект не будет построен из командной строки. Мы должны отредактировать файл build.gradle непосредственно следующим образом.

Например, данная следующая структура:

Мой проект/

  • приложение/
  • библиотеки /
    • lib1 /
    • lib2 /

Мы можем выделить 3 проекта. Gradle будет ссылаться на них со следующим именем:

  1. :приложение
  2. : Библиотеки: lib1
  3. : Библиотеки: lib2

Проект приложения скорее всего зависит от библиотек, и это делается путем объявления следующих зависимостей:

 dependencies { compile project(':libraries:lib1') }