2015-05-12 4 views
1

Я решил перенести свои проекты с Eclipse на Android Studio, и я нахожу много трудностей при этом. Самая большая проблема, которая у меня возникает:Миграция с Eclipse на Android Проблемы с Studio и библиотекой

У меня есть несколько приложений, которые используют некоторые общие проекты (библиотеки). При импорте приложения в Android Studio он обнаруживает библиотеки, на которые ссылаются, и добавляет их в приложение (копирует папки из библиотек в папке приложения). Это то, что я не хочу делать, потому что библиотеки являются общими для более 1 приложения, поэтому я хочу, чтобы они находились на том же уровне каталога, что и папка приложения, и просто ссылались на них из приложения. Как это делается в Android Studio? В Eclipse вы просто добавите ссылку из свойств проекта. Кроме того, как мне импортировать проект библиотеки в Android Studio? Я хотел бы импортировать каждую из библиотек в виде отдельных проектов и создавать их по отдельности.

Есть ли хороший урок об этом? У меня большой опыт работы с Eclipse, но я совершенно не знаком с Gradle.

Вот пример того, что я имею в виду:

У меня есть два проекта, Projecta и ProjectB. Они оба используют некоторые библиотечные проекты, разработанные мной, LibA и LibB. Все 4 проекта находятся под одной и той же папкой «Приложения» - поэтому две библиотеки являются общими, и если я меняю один из них, мне нужно перекомпилировать оба проекта. После импорта ProjectA в Android Studio (с последней версией) процесс импорта создал следующую структуру. В базовой папке Studio Applications у меня есть папка для проекта ProjectA. В папке ProjectA у меня есть другая папка ProjectA (где находятся основные файлы проекта) и еще две папки LibA и LibB. Я бы хотел иметь два проекта библиотеки, импортированных отдельно (в виде библиотечных проектов в Android Studio), а в основной папке приложения есть только папка ProjectA (и остальные стандартные папки gradle, т. Е. .gradle, .idea , сборка и т. д.).

Как это можно сделать? Мне нужно две вещи: во-первых, импортируйте проект библиотеки из Eclipse в Android Studio, а затем импортируйте проект, но вместо того, чтобы библиотеки, скопированные в пути к проекту, ссылались на них.

+1

какие библиотеки вы используете? Большинство из них находятся в .aar и доступны в центральном центре Maven. Вам нужно настроить build.gradle в студии android – Raghunandan

+0

. Я ввел объяснение по моему оригинальному вопросу, это должно сделать проблему ясной.Некоторые библиотеки принадлежат Google, например, библиотеке SlidingMenu, некоторые из которых являются библиотеками, которые я разработал в Eclipse, поэтому они являются стандартными проектами Eclipse, отмеченными как библиотека. Что вы подразумеваете под доступными в .aar и в maven central? Вы можете это объяснить? Как файл build.gradle настроен в Android Studio? – user501223

ответ

0

Проблема заключалась в том, что я ProGuard включен для библиотеки модулей, а также. Proguard был запутыванием имен классов и функций в библиотечных модулях, и они не были найдены в приложении, которое ссылалось на них. Решением было перемещение/слияние файлов proguard в приложении.

1

Просто импортируйте свои приложения без каких-либо проектов LIBS (я предполагаю, что ЛИЭС доступны в мавена)

После этого вам просто нужно добавить зависимости в Gradle файле

// your gradle file inside your app folder 
dependencies { 
    compile 'com.squareup.okhttp:okhttp:2.3.0' // example of importing okhttp 
    compile 'com.facebook.android:facebook-android-sdk:4.1.1' // example importing facebook sdk 
    compile project(':name_of_local_project') // local project 
} 

и если вы хотите, чтобы включить проект в другую папку (другой проект)

добавить это settings.gradle

project(':module1').projectDir = new File(settingsDir, '../another_path') 

Это более простой подход, и вы получите возможность обновлять Либерал без особого труда

+0

Но если у меня есть мое основное приложение, открытое в Android Studio, как я могу импортировать библиотеку? Что делать с файлами, которые уже импортированы в папке приложения (это происходит, когда я импортирую главный проект из Eclipse в Android Studio - каждый проект библиотеки копируется в основной папке приложения). – user501223

+0

Обратите внимание, что я ввел объяснение по моему первоначальному вопросу, это должно сделать проблему ясной. – user501223

+0

Я отредактировал свой ответ, если вы хотите включить локальные библиотеки, вы можете сделать это с помощью проекта компиляции cmd – letz

Смежные вопросы