Skip to content

Auth UI 9.0.0 crashes when using AuthMethodPickerLayout #2197

Open
@linnar

Description

@linnar

When using com.firebase.ui.auth.AuthUI.AuthIntentBuilder#setAuthMethodPickerLayout to set custom picker layout, application crashes after launching the created intent with exception attached below.

I believe this is caused by com.firebase.ui.auth.data.model.FlowParameters#CREATOR createFromParcel where there is at line 56 boolean enableHints = in.readInt() != 0; that reads a value that is not written in writeToParcel in this version anymore.

java.lang.RuntimeException: Unable to start activity ComponentInfo{package/com.firebase.ui.auth.KickoffActivity}: java.lang.ClassCastException: com.firebase.ui.auth.AuthMethodPickerLayout cannot be cast to com.google.firebase.auth.ActionCodeSettings
   	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4206)
   	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4393)
   	at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:222)
   	at android.app.servertransaction.TransactionExecutor.executeNonLifecycleItem(TransactionExecutor.java:133)
   	at android.app.servertransaction.TransactionExecutor.executeTransactionItems(TransactionExecutor.java:103)
   	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:80)
   	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2773)
   	at android.os.Handler.dispatchMessage(Handler.java:109)
   	at android.os.Looper.loopOnce(Looper.java:232)
   	at android.os.Looper.loop(Looper.java:317)
   	at android.app.ActivityThread.main(ActivityThread.java:8934)
   	at java.lang.reflect.Method.invoke(Native Method)
   	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:591)
   	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:911)
Caused by: java.lang.ClassCastException: com.firebase.ui.auth.AuthMethodPickerLayout cannot be cast to com.google.firebase.auth.ActionCodeSettings
   	at com.firebase.ui.auth.data.model.FlowParameters$1.createFromParcel(FlowParameters.java:61)
   	at com.firebase.ui.auth.data.model.FlowParameters$1.createFromParcel(FlowParameters.java:45)
   	at android.os.Parcel.readParcelableInternal(Parcel.java:5094)
   	at android.os.Parcel.readValue(Parcel.java:4845)
   	at android.os.Parcel.readValue(Parcel.java:4614)
   	at android.os.Parcel.-$$Nest$mreadValue(Unknown Source:0)
   	at android.os.Parcel$LazyValue.apply(Parcel.java:4712)
   	at android.os.Parcel$LazyValue.apply(Parcel.java:4671)
   	at android.os.BaseBundle.unwrapLazyValueFromMapLocked(BaseBundle.java:420)
   	at android.os.BaseBundle.getValueAt(BaseBundle.java:403)
   	at android.os.BaseBundle.getValue(BaseBundle.java:383)
   	at android.os.BaseBundle.getValue(BaseBundle.java:366)
   	at android.os.BaseBundle.getValue(BaseBundle.java:359)
   	at android.os.Bundle.getParcelable(Bundle.java:1049)
   	at android.content.Intent.getParcelableExtra(Intent.java:9564)
   	at com.firebase.ui.auth.data.model.FlowParameters.fromIntent(FlowParameters.java:158)
   	at com.firebase.ui.auth.ui.HelperActivityBase.getFlowParams(HelperActivityBase.java:54)
   	at com.firebase.ui.auth.ui.InvisibleActivityBase.onCreate(InvisibleActivityBase.java:39)
   	at com.firebase.ui.auth.KickoffActivity.onCreate(KickoffActivity.java:36)
   	at android.app.Activity.performCreate(Activity.java:9079)
   	at android.app.Activity.performCreate(Activity.java:9057)
   	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1531)
   	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4188)
   	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4393) 
   	at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:222) 
   	at android.app.servertransaction.TransactionExecutor.executeNonLifecycleItem(TransactionExecutor.java:133) 
   	at android.app.servertransaction.TransactionExecutor.executeTransactionItems(TransactionExecutor.java:103) 
   	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:80) 
   	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2773) 
   	at android.os.Handler.dispatchMessage(Handler.java:109) 
   	at android.os.Looper.loopOnce(Looper.java:232) 
   	at android.os.Looper.loop(Looper.java:317) 
   	at android.app.ActivityThread.main(ActivityThread.java:8934) 
   	at java.lang.reflect.Method.invoke(Native Method) 
   	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:591) 
   	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:911)

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions