モジュールは
モジュールの具体例のプロジェクトの一部である:あなたがライブラリを作っている場合は、複数のモジュールを持つことができます 、例えば図書館そのものとデモプロジェクトです。それらのそれぞれは、モジュール
注です:あなたは、いくつかのオンライン機能を持つアプリケーションを作っている :各モジュールは、独自のコード
味のための具体的な例があります。これにはいくつかの環境があります(テスト用サーバーenv、ライブバージョン用)。これは、わずかな結論である
味が(メインフォルダを使用して)自分のコードを共有することができます(必要に応じて、独自の実装) あなたは
は注意独自の設定ですべての環境用のビルド味を作ることができます。モジュールとフレーバーは、この短い説明よりはるかに強力ですが、私はそれが最も重要な違いを指摘すると思います。
EDIT:主な違いは、特にgradleに関するプロジェクトの構造です。あなたは次のような構造を得るよう
モジュールは常に、自分自身のGradleファイルを持っている:
projectName.gradle
module1.gradle
module2.gradle
...
味がモジュールのGradleのファイルで定義されています。
例えばmodule1.gradleは次のようになります。
// some other gradle stuff before
buildTypes {
dev {
// your config
}
debug {
// your config
}
release {
// your config
}
}
ご覧のとおり、フレーバーとモジュールを混在させることができます。これで、module1に2つのモジュールと異なるフレーバーを持つプロジェクトが作成されました。プロジェクトフォルダに
、あなたのファイルエクスプローラで構造を次のようしておく必要がありますそれらのわずかな違いが何であるかを
/project
/module1
/src
/main
/dev
/debug
/release
/module2
を。 ? –
私は、味をapp/src/flavorNameとして定義することができ、完全に異なるコードのセットにもなります。 Modulsもコードを共有できますが、それは良い方法ではないと思います。フレーバーの違いは私の実装に依存します。 –
はい、反対にすることはできません - モジュールをコードを共有するようにします。 この2つのエンティティは、異なるケースでの使用を意図していますが、必要に応じて同様のことを行うことができます。 –