使用R8的Firebase中的循环参考错误

时间:2019-05-13 08:20:42

标签: android build android-proguard r8 android-r8

我们收到Firebase和R8的以下错误。

[CIRCULAR REFERENCE:java.lang.IllegalArgumentException: java.lang.IllegalArgumentException: Multiple entries with same key: Method com.google.firebase.iid.FirebaseInstanceId.zza Proto LLL com.google.android.gms.tasks.Task java.lang.String java.lang.String=Encoded method Method com.google.firebase.iid.FirebaseInstanceId.zza Proto LLL com.google.android.gms.tasks.Task java.lang.String java.lang.String and Method com.google.firebase.iid.FirebaseInstanceId.zza Proto LLL com.google.android.gms.tasks.Task java.lang.String java.lang.String=Encoded method Method com.google.firebase.iid.FirebaseInstanceId.zza Proto LLL com.google.android.gms.tasks.Task java.lang.String java.lang.String]

请帮助我进一步调试此指针。让我知道是否需要更多日志来调试它。

3 个答案:

答案 0 :(得分:8)

我在最新的Android Studio 3.5中也遇到了此错误。通过点击指向Google Issue Tracker的链接并仅在我的Proguard规则中添加以下行来解决此问题:

-keep class com.google.firebase.iid.FirebaseInstanceId { zza(...); }

答案 1 :(得分:0)

这个问题今天对我来说也突然出现。据报道here,似乎他们正在努力。

答案 2 :(得分:0)

此问题应在R8版本1.5.25中修复,请参见https://issuetracker.google.com/132575649#comment8的用法,或等待应包含此修复程序的Andriod Studio 3.4.0-beta02。