Прежде всего, у меня есть настройка проекта Android Studio, которая отлично работает из Studio. Я могу создать его и запустить на устройстве и в эмуляторе без проблем, а также создать APK выпуска.Gradle/Android: укажите «root» как зависимость подпроекта
Я сейчас пытаюсь добраться до такой степени, что у меня могут быть инструменты командной строки, которые будут обрабатывать мою сборку для меня. Все, что я прочитал, говорит о том, что Android Studio использует градиент, но из того, что я видел, это явно не относится к моему проекту - поскольку мне приходилось создавать файлы build.gradle, settings.gradle, прежде чем gradlew даже попытался бы что-то построить - и все же Android Studio все еще может скомпилировать и развернуть просто отлично.
Вот моя структура проекта (как он сидит физически на диске):
Root Project (Android library project, contains all the src, logic, UI, activities, etc.)
\--- WrapperProject (Android app, depends on the root project)
\--- SubProject1 (Android library, used by root)
\--- SubProject2 (Android library, used by root)
Это settings.gradle
файл моего корневого проекта
include ':SubProject1', ':SubProject2'
Кроме того, здесь build.gradle
файл моего корневого проекта. Обратите внимание, что этот проект отмечен как андроид-библиотеки и не ссылается на WrapperProject никак
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.4'
}
}
apply plugin: 'android-library'
dependencies {
compile project(':SubProject1')
compile project(':SubProject2')
}
android {
compileSdkVersion 17
buildToolsVersion "17"
defaultConfig {
minSdkVersion 9
targetSdkVersion 17
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
instrumentTest.setRoot('tests')
}
}
Я могу построить мой корневой проект успешно используя gradlew build
(если это?) - но моя конечная цель заключается в создании APK из WrapperProject, который имеет зависимость от корневого проекта. Можете ли вы предложить, что должен содержать файл build.gradle моего WrapperProject?