Android Studio - Jak otworzyć wiele projektów w jednym oknie?

82

Pobrałem Android Studio i zacząłem używać go do tworzenia aplikacji na Androida.

Muszę wiedzieć, jak otworzyć wiele projektów w jednym oknie, takim jak Eclipse. Oczekuję pomocy, dzięki.

SelvaMariappan
źródło

Odpowiedzi:

33

Otwarcie dwóch projektów w jednym oknie nie jest możliwe w Android Studio / IntelliJ IDEA. Kiedy więc otworzysz drugi projekt, będziesz musiał zdecydować:

Nowe projekty można otwierać w nowym oknie lub zastępować projekt w istniejącym oknie. Jak chciałbyś otworzyć projekt?

To ograniczenie jest przydatne, ponieważ okno oferuje funkcje specyficzne dla projektu, takie jak karta Zmiany dla informacji VCS itp.

Jak korzystać z projektów bibliotecznych?

Na razie możesz skopiować projekt biblioteki do folderu projektu i zadeklarować go jako zależność modułu. Jeśli użyjesz tych samych bibliotek w różnych projektach, w końcu będziesz mieć kod wiele razy.

ProjectA                   ProjectB
 facebook-sdk/              actionbarsherlock/
 actionbarsherlock/         bin/
 bin/                       src/
 src/                       ...
 AndroidManifest.xml

Chociaż wydaje się to trochę niewygodne, pomaga mieć wszystkie wymagane źródła w VCS. Wkrótce Gradle, nowy system kompilacji , będzie przyjemnie zarządzać tymi zależnościami. Oto przykład tego, jak może wyglądać kompilacja Gradle zawierająca ActionBarSherlock lub podobne biblioteki:

repositories {
    mavenCentral()
}

dependencies {
    compile 'com.actionbarsherlock:library:4.2.0'
}

W tej odpowiedzi znajdziesz kilka powodów, dla których to rozwiązanie jeszcze nie działa.

ottel142
źródło
dzięki za odpowiedź. jeśli
polecam
5
@ottel W eclipse możemy zobaczyć dwa lub więcej projektów w eksploratorze projektów, ale nie widzimy studia Android. Dlaczego programista Android w Google nie myśli o Android Studio, aby życie programisty mogło być łatwiejsze, a nie trudniejsze.
Arun Kumar
Wydaje się, że ta opcja została usunięta w Android Studio 2.0+
Essej
59

IntelliJ IDEA creates a project for the entire code base you work with, and a module for each of its individual components. So, IntelliJ IDEA module is more like an Eclipse project, and project is roughly similar to Eclipse workspace. There's no exact equivalent to Eclipse's workspace that contains all your work, but you can open multiple projects in multiple frames at the same time.

Ta tabela może pomóc ci zobaczyć, jak koncepcje Eclipse i IntelliJ IDEA odwzorowują się na siebie:

Eclipse               IDEA
Workspace             Project
Project               Module
Project-specific JRE  Module JDK
User library          Global library
Classpath variable    Path variable
Project dependency    Module dependency
Library               Module library

Aby użyć library add it as a dependancy:

File > Project Structure > Modules > Dependencies

Then add the module (android library) as a module dependency.

Chris
źródło
7
That is not true. A project in IDEA is not like a workspace. Think about this: you set the minSDK, target and maxSDK to the project, it has some configuration for the project. But the workspace dont have any configuration. The project is just a project, but can have multiple packages like in eclipse. That's all.
Sterling Diaz
2
@Sterling Diaz That is pretty much true actually. You can set separate 'min-' and 'target' sdk level for every module in its build.gradle file and don't set any at all for Project in whole - like you said for Workspace. Even more, you can set 'version' and whatever-you-want properties to every module and compile them separately. So Project is pretty much like Workspace, nobody says it is exactly the Workspace.
mykolaj
4
Incredibly useful post. Very confusing that a project in Eclipse is roughly equivalent to a module in IDEA. It would be a very nice feature to have multiple projects open in IDEA at one time. I have a set of Java libraries, Android libraries and several apps based on one or both. Each app has a free, paid and common module. It would be nice to view the libraries and each app together. Maybe a future enhancement?
Dustin
But if you import a module, you copy the code (correct me if Im wrong). That means changes applied to the module are not applied to the same module imported in another project?
最白目
(I tested it and it is like I assumed). In eclipse`s workspace, the project would point to the same source. No offense, but it´s just not true what you write.
最白目
0

write code in settings.gradle

include ':ProjectName'
project(':ProjectName').projectDir = new File(rootDir, '/ProjectName')
Suresh Sarak
źródło