FirebaseUI-Android
FirebaseUI-Android copied to clipboard
App crash : com.firebase.ui.auth.util.ui.PreambleHandler$CustomTabsSpan.onClick
Describe your environment
- Android device: _____LGE
- Android OS version: _____Android 6
- Google Play Services version: _____
- Firebase/Play Services SDK version: _____
- FirebaseUI version: ____6.2.0
Describe the problem:
Got App Crash in Firebase crashlytics
Steps to reproduce:
In "PhoneActivity". Don't have the steps.
Observed Results:
Crash logs:
Fatal Exception: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=www.google.com (has extras) } at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1798) at android.app.Instrumentation.execStartActivity(Instrumentation.java:1512) at android.app.Activity.startActivityForResult(Activity.java:3930) at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java) at android.app.Activity.startActivityForResult(Activity.java:3890) at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java) at android.app.Activity.startActivity(Activity.java:4213) at androidx.core.content.ContextCompat.startActivity(ContextCompat.java:2) at androidx.browser.customtabs.CustomTabsIntent.launchUrl(CustomTabsIntent.java:2) at com.firebase.ui.auth.util.ui.PreambleHandler$CustomTabsSpan.onClick(PreambleHandler.java:2) at android.text.method.LinkMovementMethod.onTouchEvent(LinkMovementMethod.java:217) at android.widget.TextView.onTouchEvent(TextView.java:8325) at android.view.View.dispatchTouchEvent(View.java:9300) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2553) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2254) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2553) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2254) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2553) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2254) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2553) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2254) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2553) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2254) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2553) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2254) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2553) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2254) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2553) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2254) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2553) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2254) at com.android.internal.policy.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2403) at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1737) at android.app.Activity.dispatchTouchEvent(Activity.java:2771) at androidx.appcompat.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java) at com.android.internal.policy.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2364) at android.view.View.dispatchPointerEvent(View.java:9520) at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4230) at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4096) at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3642) at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3695) at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3661) at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3787) at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3669) at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:3844) at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3642) at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3695) at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3661) at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3669) at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3642) at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:5922) at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:5896) at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:5857) at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:6025) at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:185) at android.os.MessageQueue.nativePollOnce(MessageQueue.java) at android.os.MessageQueue.next(MessageQueue.java:323) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5421) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
We are having the same issue with latest versions:
Android device: Samsung Galaxy J6 Android OS version: Android 10 Google Play Services version: No Idea Firebase/Play Services SDK version: BOM 31.1.1 FirebaseUI version: 8.0.2
Crashlytics stack trace:
android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=https://example.com/... (has extras) }
at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:2071)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1717)
at android.app.Activity.startActivityForResult(Activity.java:5250)
at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:597)
at android.app.Activity.startActivityForResult(Activity.java:5208)
at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:583)
at android.app.Activity.startActivity(Activity.java:5579)
at androidx.core.content.ContextCompat$Api16Impl.startActivity(ContextCompat.java:830)
at androidx.core.content.ContextCompat.startActivity(ContextCompat.java:279)
at androidx.browser.customtabs.CustomTabsIntent.launchUrl(CustomTabsIntent.java:376)
at com.firebase.ui.auth.util.ui.PreambleHandler$CustomTabsSpan.onClick(PreambleHandler.java:142)
at android.text.method.LinkMovementMethod.onTouchEvent(LinkMovementMethod.java:232)
at android.widget.TextView.onTouchEvent(TextView.java:12022)
at android.view.View.dispatchTouchEvent(View.java:14376)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3863)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:3551)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3863)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:3551)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3863)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:3551)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3863)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:3551)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3863)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:3551)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3863)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:3551)
at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:733)
at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1922)
at android.app.Activity.dispatchTouchEvent(Activity.java:4051)
at androidx.appcompat.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:69)
at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:691)
at android.view.View.dispatchPointerEvent(View.java:14644)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:6523)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:6310)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:5748)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:5801)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:5767)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:5923)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:5775)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:5980)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:5748)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:5801)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:5767)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:5775)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:5748)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:8907)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:8768)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:8721)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:9043)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:194)
at android.os.MessageQueue.nativePollOnce(MessageQueue.java)
at android.os.MessageQueue.next(MessageQueue.java:336)
at android.os.Looper.loop(Looper.java:197)
at android.app.ActivityThread.main(ActivityThread.java:7948)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1075)
@sandeep5193 Does your device have a browser installed?
I have no idea about this device, this is captured by Crashlytics.
@sandeep5193 Thanks for the quick response. I will investigate this further. ~But in the meantime I have a workaround detailed here: https://github.com/firebase/firebase-android-sdk/issues/4006#issuecomment-1219429107~ Update: I just noticed this workaround might not work in this case.
Yeah I am aware of that workaround. In fact, we updated the lib to v8.0.2 assuming it is handled for all instances in Auth-UI, later realized that it is for only Phone Verification sequence.
I am getting the same issue here.