まず、Studio 内から正常に動作する Android Studio プロジェクトのセットアップを用意しました。問題なくビルドしてデバイスとエミュレーターで実行でき、リリース APK をビルドすることもできます。
私は現在、自分のビルドを処理するコマンド ライン ツールを使用できるところまで到達しようとしています。私が行ったすべての読書は、Android Studioがgradleを使用していることを示唆していますが、私のプロジェクトには明らかにそうではありません.gradlewが試行する前にbuild.gradle、settings.gradleファイルを作成する必要があったためです.何でもビルドできますが、それでも 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
ファイルです。このプロジェクトは android-library としてマークされており、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
が、最終的な目標は、ルート プロジェクトに依存する WrapperProject から APK をビルドすることです。私の WrapperProject の build.gradle ファイルに何を含めるべきか教えていただけますか?