Open6
Explicit API Mode のメモ

- Android library で Explicit API Mode を有効にする方法

- Explicit API Mode の使い所
- 公式的には ライブラリ作者のためにこのモードが存在しているらしい。マルチモジュールのプロジェクトで可視性をコントロールする用途については公式では触れられていなさそう

- androidx の中では、room、compose-compiler/runtime、paging 等のプロジェクトで Explicit API Mode が有効になっている

- Explicit API mode をオンにすると public な関数の場合 return type の明示的な指定も必要になる

アクセス修飾子を付ける必要があるもの
- class
- data class
- sealed class
- interface
- sealed interface
- object
- companion object
- function
- properties/getter/setter

- Replace structually よりも 通常の Replace の方がやりやすそう
- replace structually だと visibilityのあるなしもよしなに認識してしまい、すでに可視性が設定されているものまでヒットしてしまうため
- いきなりすべてのモジュールで実施すると大変なので、フェーズを分けてやるとよさそう