Open7

Androidマルチモジュール移行方法

AniokraitAniokrait

マルチモジュール全然わからん

マルチモジュール化のメリットやどういう粒度で分割すべきかというのは先人たちが共有してくれているけど、具体的にモジュールを分けていく手順については詳しい解説が見つからなかった。
以下に手探りでマルチモジュール化していった方法を投稿していく。

AniokraitAniokrait

そもそもモジュールって

メニューのFile -> New -> New Module...から、またはプロジェクトビューのプロジェクト上で右クリックしてNew -> Moduleから新しいモジュールを追加することができる。
このモジュールに分割して管理することをマルチモジュール化対応と言う

メニューから作成する場合

プロジェクトビューから作成する場合

AniokraitAniokrait

Version Catalog

モジュールを分割する前にまずはVersion Catalog対応をする。
Version Catalog対応は必須ではないけど、この後ビルドロジックを共通化する際にしておいたほうがよさそう(というか参考にしているレポジトリやサイトの大半がVersion Catalogで管理しているのでそれに習うのが楽そう)。

Version Catalogに移行する方法はAndroid developersに分かりやすい解説記事があるのでそちらを参照

AniokraitAniokrait

ビルドロジックの共通化

AniokraitAniokrait

ちょっと前まではbuildSrcでビルドロジックを共通化するのが流行りだったけど、今はCompositon buildが主流のよう。
buildSrcだとちょっとした変更でもフルビルドとテストが走って時間がかかるけど、Composition buildはそれがないらしい。かわりに設定が少し複雑。