2014-07-07 22 views
5

Jak dodać projekt (np. RootTools) do innego projektu jako bibliotekę w Android Studio?Jak dodać projekt jako bibliotekę w Android Studio?

Używam Androida Studio 0.8.1 i nie wiem, jak dodać kolejny projekt (folder) i znalazłem wiele informacji o importowaniu plików JAR, ale tak nie jest.

Dzięki za pomoc.

+0

Czy masz projekt jako repozytorium git? – WarrenFaith

+0

Nie, mam na folderze lokalnym, jeden jest moim projektem generowanym przez Studio Android, a drugi to projekt pobrany z repozytorium github: https://github.com/Stericson/RootTools – MAOL

+0

Przejdź do pliku >> Struktura projektu >> Wybierz moduły w lewym panelu i kliknij swoją główną zakładkę teraz zależności goto i kliknij ikonę plus po prawej stronie i wybierz zależności modułu dodaj swój projekt biblioteki z listy po tym, jak możesz zobaczyć swój projekt biblioteki na liście zależności teraz zaznacz pole wyboru z lewej strony i aplikuj. –

Odpowiedz

4

Proponuję importować bibliotekę ręcznie zamiast przy użyciu „Importuj moduł”, ponieważ 1) zmieni układ katalogów dla biblioteki; 2) możesz łapać błędy (tak jak ja), ponieważ Android Studio jest wciąż w wersji beta.

Aby to osiągnąć:

1) Skopiuj folder biblioteki w/biblioteki

2) Utwórz plik build.gradle wewnątrz folderu biblioteki właśnie kopiowana, z podobną zawartością:

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.12.+' 
    } 
} 
apply plugin: 'android-library' 

android { 
    compileSdkVersion 19 
    buildToolsVersion "19.1.0" 

    defaultConfig { 
     minSdkVersion 14 
     targetSdkVersion 19 
    } 

    sourceSets { 
     main { 
      java.srcDirs = ['src'] 
      resources.srcDirs = ['src'] 
      aidl.srcDirs = ['src'] 
      renderscript.srcDirs = ['src'] 
      res.srcDirs = ['res'] 
      assets.srcDirs = ['assets'] 

      manifest.srcFile 'AndroidManifest.xml' 
     } 
    } 
} 

3) Dodaj do listy include ':libraries:RootTools'settings.gradle

4) Dodaj Zależność do build.gradle pod aplikacji modułu:

dependencies { 
    compile project(':libraries:RootTools') 
    ... 
} 

5) Uruchom ./gradlew assembleDebug zainstalować projektu, w tym biblioteki.

+0

Przydatne, dzięki. – MAOL

+0

Gdy wykonuję wszystkie te kroki, kompilacja gradle kończy się niepowodzeniem w kilku punktach w pliku manifestu. Za każdym razem, gdy odwołuję się do źródła lub zasobu projektu biblioteki, "Nie znaleziono zasobu pasującego do podanej nazwy (w" x "z wartością" @ ciąg/x_x ")." występuje. Szukam rozwiązania od wieków ... – Forke

1

Jeśli chcesz zrobić to ręcznie, możesz wykonać poniższe kroki.

  1. Utwórz folder o nazwie "biblioteki" na najwyższym poziomie. Nie jest to konieczne, ale pomoże ci uzyskać dobrą strukturę, gdy potrzebujesz dodać więcej bibliotek.
  2. Skopiuj folder projektu pod biblioteki.
  3. otwórz settings.gradle i dodaj projekt.

include ':libraries:RootTools'

  1. Otwarte build.gradle z projektu, a nie top build.gradle poziom i dodać zależność
dependencies { 
    compile 'com.android.support:support-v4:19.1.+' 
    compile project(':libraries:RootTools') 
} 

następnie run lub. /gradlew assemble

app 
- build.gradle // add dependency 
libraries 
- RootTools 
settings.gradle // add project 
+0

Błąd: (24, 0) Projekt o ścieżce ": libs: RootTools" nie został znaleziony w projekcie ": app". Nie wiem dlaczego? – MAOL

+0

gdzie jest twój folder libs? upewnij się, że dodałeś go do tego samego poziomu co settings.gradle –

+0

wewnątrz, app-> libs -> "RootTools" – MAOL

Powiązane problemy