android studio 画面上部 Build > Asennble Module~

android studioの画面上部

Build -> Assemble Module 'someProject.app' というのは
どのような動作をするのでしょうか?

エミュレータ、デバイスでの実行はしないが、ビルドは行う、
というようなものでしょうか?

Build -> Assemble Projectというのは
どのような動作になるのでしょうか?

        ↓

### **Build -> Assemble Module 'someProject.app'**

- **動作**: 指定したモジュール(例: `someProject.app`)のみをビルドします。

- **実行の有無**: **実行しません**(エミュレータやデバイスでは起動しない)。

- **具体的な処理**:

  - Java/Kotlin のコードをコンパイル
  - XMLリソースを処理
  - DEX(Dalvik Executable)に変換
  - APK/AAB(Android App Bundle)のビルド
  - 署名なしのAPKを作成(`debug`ビルドならデフォルトの署名あり)


💡 **主な用途**:
- 一部のモジュールだけをビルドしたい場合(例: `app`モジュールのみ)
- ビルドの動作確認(実行せずにエラーがないか確認)

---

### **Build -> Assemble Project**

- **動作**: **プロジェクト全体**をビルドします(すべてのモジュールを含む)。

- **実行の有無**: **実行しません**(エミュレータやデバイスでは起動しない)。

- **具体的な処理**:

  - `Assemble Module` と同じ処理を **全モジュール** に対して実行

💡 **主な用途**:

- **すべてのモジュール**がビルドできるか確認したいとき

- ビルド後に **手動でデバイスへインストール** する場合

- CI/CD(継続的インテグレーション)で
    プロジェクト全体のビルドを確認する場合

---


### **違いのまとめ**

| 操作 | ビルド対象 | 実行(エミュレータ/デバイス) | 主な用途 |

|------|----------|----------------|----------|
| **Assemble Module 'someProject.app'** | 指定したモジュールのみ | しない | 一部のモジュールだけをビルド |
| **Assemble Project** | プロジェクト全体(全モジュール) | しない | 全体のビルドテスト |

どちらも **エミュレータやデバイスでの実行は行わず、ビルドのみ** する機能です。


コメント