1
このクラッシュはなぜ起こっているのでしょうか?続きProGuardの問題にDexguardを使ったFirebaseクラッシュ
-keepクラスcom.googleを固定設定:
更新は(
signInWithCustomToken
を使用して署名した)デバッグビルドでは動作しますが、ユーザーに署名を取得しようとしたときDexguardリリースがクラッシュします。 android.gms.internal。** {*; }
Firebaseバージョン:9.4.0
Caused by java.lang.IllegalArgumentException: field o.ս.ʽ has type android.support.v4.util.ArrayMap, got o.dj
at java.lang.reflect.Field.set(Field.java)
at com.google.android.gms.internal.zzaog$1.zza(Unknown Source)
at com.google.android.gms.internal.zzaog$zza.zzb(Unknown Source)
at com.google.android.gms.internal.zzamp.zza(Unknown Source:46000)
at com.google.android.gms.internal.zzafy.zze(Unknown Source:8000)
at com.google.firebase.auth.FirebaseAuth.(Unknown Source)
at com.google.firebase.auth.FirebaseAuth.(Unknown Source)
at com.google.android.gms.internal.zzaft.(Unknown Source)
at com.google.firebase.auth.FirebaseAuth.getCurrentUser(Unknown Source:19000)
ProGuardの設定ファイル:ProGuardの設定後
# Firebase
-keepattributes Signature
-keepattributes *Annotation*
-keep class com.google.firebase.** { *; }
-keep class org.apache.** { *; }
-keepnames class com.fasterxml.jackson.** { *; }
-keepnames class javax.servlet.** { *; }
-keepnames class org.ietf.jgss.** { *; }
-dontwarn org.apache.**
-dontwarn org.w3c.dom.**
-keepresources string/default_web_client_id
-keepresources string/firebase_database_url
-keepresources string/gcm_defaultSenderId
-keepresources string/google_api_key
-keepresources string/google_app_id
-keepresources string/google_crash_reporting_api_key
-keepresources string/google_storage_bucket
# Supoort
-dontwarn android.support.**
-keep class android.support.v4.** { *; }
-keep interface android.support.v4.** { *; }
-keep class android.support.v7.** { *; }
-keep interface android.support.v7.** { *; }
-keep class android.support.design.** { *; }
-keep interface android.support.design.** { *; }
はandroid.support内のクラスのように見える固定しました名前が変更されています。 -keep class androidを追加してみてください。* * {*; } –
申し訳ありませんが、既にサポートされているサポート関連のプロガイドルールで投稿を更新しました。 –
btw。あなた自身の質問に答えることができます。 –