java.lang.RuntimeException:无法启动活动 ComponentInfo{<package-name>/com.google.android.gms.auth.api.signin.internal.SignInHubActivity}

Pol*_*ano 17 android

我收到了大量关于我的应用程序抛出异常的 Crashlytics 报告,但我自己从未见过这种情况,而且我正在努力了解它来自哪里。

我的运行理论是,它与我拥有的 Firebase Auth 依赖项有关 - 但该依赖项尚未被积极使用。我的生产应用程序已禁用整个注册和登录流程。生产代码中使用的库的唯一两个实例是:

// Inside Activity.onCreate()
Firebase.auth.addAuthStateListener {
    val user = it.currentUser

    if (user != null) {
        Firebase.analytics.setUserId(user.uid)

        CoroutineScope(Dispatchers.IO).launch {
            registerDeviceToken(applicationContext)
        }
    } else {
        Firebase.analytics.setUserId(null)
        Firebase.messaging.deleteToken()
    }
}
Run Code Online (Sandbox Code Playgroud)

和:

// Called from Activity.onStart()
fun hasPendingMagicLink(intent: Intent): Boolean {
    val emailAddress = getMagicLinkEmailAddress()

    return emailAddress != null 
        && Firebase.auth.currentUser == null 
        && Firebase.auth.isSignInWithEmailLink(intent.data.toString())
}
Run Code Online (Sandbox Code Playgroud)

我在下面列出了 Crashlytics 报告。


致命异常:java.lang.RuntimeException

无法启动活动 ComponentInfo{com.poliziano.notanotherpomodoroapp/com.google.android.gms.auth.api.signin.internal.SignInHubActivity}:java.lang.NullPointerException android.app.ActivityThread.performLaunchActivity

Fatal Exception: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.poliziano.notanotherpomodoroapp/com.google.android.gms.auth.api.signin.internal.SignInHubActivity}: java.lang.NullPointerException
       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2778)
       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2856)
       at android.app.ActivityThread.-wrap11(ActivityThread.java)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1589)
       at android.os.Handler.dispatchMessage(Handler.java:106)
       at android.os.Looper.loop(Looper.java:164)
       at android.app.ActivityThread.main(ActivityThread.java:6494)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
Run Code Online (Sandbox Code Playgroud)

由java.lang.NullPointerException引起

android.app.ActivityThread.performLaunchActivity

Caused by java.lang.NullPointerException
       at java.util.Objects.requireNonNull(Objects.java:203)
       at com.google.android.gms.internal.auth-api.zzaz.checkNotNull(zzaz.java:2)
       at com.google.android.gms.auth.api.signin.internal.SignInHubActivity.onCreate(SignInHubActivity.java:5)
       at android.app.Activity.performCreate(Activity.java:7009)
       at android.app.Activity.performCreate(Activity.java:7000)
       at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1214)
       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2731)
       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2856)
       at android.app.ActivityThread.-wrap11(ActivityThread.java)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1589)
       at android.os.Handler.dispatchMessage(Handler.java:106)
       at android.os.Looper.loop(Looper.java:164)
       at android.app.ActivityThread.main(ActivityThread.java:6494)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
Run Code Online (Sandbox Code Playgroud)