kotlin Firebase身份验证在Android 12上不起作用,以S+为目标需要FLAG_IMMUTABLE或FLAG_MUTABLE之一

nimxete2  于 2023-03-19  发布在  Kotlin
关注(0)|答案(2)|浏览(172)

Firebase身份验证无法在Android 12上运行。开始登录时应用崩溃,Android Studio中的错误日志为

Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent.
Strongly consider using FLAG_IMMUTABLE, only use FLAG_MUTABLE if some functionality depends on the PendingIntent being mutable, e.g. if it needs to be used with inline replies or bubbles.

我尝试更新依赖项,但仍然不起作用。
据我所知,Firebase Auth的依赖关系需要更新。

implementation "com.firebaseui:firebase-ui-auth:8.0.0"

有什么办法可以解决这个问题吗?我们如何通知Firebase开发人员这个问题,以便他们尽快解决?
注意:我知道有很多问题与FLAG_IMMUTABLE or FLAG_MUTABLE有关,但我需要这一个的帮助。我实际上尝试了所有那些解决方案,它们都不起作用。

qyuhtwio

qyuhtwio1#

在您的应用Gradle文件中添加以下行,

implementation "com.google.android.gms:play-services-auth:20.3.0"

同步项目和享受。

iqjalb3h

iqjalb3h2#

除了更新库之外,请确保在获取挂起Intent的结果时指定FLAG_IMMUTABLE或FLAG_MUTABLE。

PendingIntent resultPendingIntent =
            stackBuilder.getPendingIntent(
                    0,
                    PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE
            );

相关问题