【问题标题】:Android Studio 3.0 FirebaseAndroid Studio 3.0 Firebase
【发布时间】:2026-02-19 12:20:02
【问题描述】:

直到昨天,我一直在使用 Firebase 身份验证,在编译 Android Studio 2.3.3 的 SDK 版本 26.01 时没有任何问题。

但是,由于我昨天更新到3.0,所以每次登录都会出现Developer error Toast,我的应用会异常终止。

由于这个问题,我已经多次删除并安装了Android studio。

providers.add(new AuthUI.IdpConfig.Builder(AuthUI.GOOGLE_PROVIDER).build());

        startActivityForResult(
                AuthUI.getInstance()
                        .createSignInIntentBuilder()
                        .setIsSmartLockEnabled(false)
                        .setIsSmartLockEnabled(!BuildConfig.DEBUG)
                        .setLogo(R.drawable.logo_layer)
                        .setProviders(providers)
                        .setTheme(R.style.GreenTheme)
                        .build(),
                RC_SIGN_IN);

以及此处的错误消息。

I/zygote: Rejecting re-init on previously-failed class java.lang.Class<com.firebase.ui.auth.provider.TwitterProvider>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/twitter/sdk/android/core/Callback;


I/zygote: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.twitter.sdk.android.core.Callback" on path: 

这些代码从 2.3.3 版到昨天都运行良好。但是,现在这些错误消息出现并且根本不起作用。甚至我在 Auth UI 中也只使用了 google 提供程序。我根本没有使用 Twitter-Provider。但是突然就这样了……完全不知道为什么。

并且模拟器也已更改,如下所示。 而且我认为这似乎也对 Firebase 身份验证中的问题产生了重大影响。

【问题讨论】:

  • 你用过proguard吗?
  • @faruk 不,我没用过。

标签: android firebase firebase-authentication


【解决方案1】:

我遇到了同样的错误,并且和你一样,我没有将 Twitter 指定为可用的登录提供商之一。

我能够通过将 Twitter SDK 库添加到应用依赖项来消除错误:

implementation ("com.twitter.sdk.android:twitter-core:3.0.0@aar") {
    transitive = true
}

【讨论】:

  • 你真聪明。
【解决方案2】:

尝试将以下存储库添加到您的 build.gradle:

allprojects {
repositories {
    // ...
    maven { url 'https://maven.fabric.io/public' }
 }
}

【讨论】:

  • 已经很久了。