最近はJetpack ComposeでAndroidアプリ作っているんですが、 minifyEnabled true
にするとCompose内でクラッシュする現象に悩まされました。
デバッガとかで見れないので、Firebase Crashlyticsでログを見ると、以下のようなExceptionで死んでいました。
Fatal Exception: java.lang.IllegalStateException: pending composition has not been applied
該当Composeファンクション内の要素を一個づつ減らしていって原因を探りました。どうやらComposeファンクションに渡しているdata class内の特定のパラメータにアクセスするとダメらしい。
なので、proguardから該当data classを除外してみました。めんどいのでモデルパッケージ以下全部除外。
-keep class com.hogehoge.app.core.model.** { *; }
これで直りました。エラーメッセージから原因予想できず、1日くらいハマりました。