We are seeing on a small set of devices from Firebase CRASHLYTICS the following crash.
Crash Details
Fatal Exception: android.view.InflateException
Binary XML file line #41 in sampleapp:layout/design_layout_snackbar_include: Binary XML file line #41 in sampleapp:layout/design_layout_snackbar_include: Error inflating class android.widget.Button
Caused by java.lang.reflect.InvocationTargetException:
at java.lang.reflect.Constructor.newInstance0(Constructor.java)
at java.lang.reflect.Constructor.newInstance(Constructor.java:343)
at android.view.LayoutInflater.createView(LayoutInflater.java:882)
at android.view.LayoutInflater.createView(LayoutInflater.java:804)
at com.android.internal.policy.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:58)
at android.view.LayoutInflater.onCreateView(LayoutInflater.java:958)
at android.view.LayoutInflater.onCreateView(LayoutInflater.java:978)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1032)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:989)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:1151)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1112)
at android.view.LayoutInflater.inflate(LayoutInflater.java:700)
at android.view.LayoutInflater.inflate(LayoutInflater.java:544)
at com.google.android.material.snackbar.Snackbar.makeInternal(Snackbar.java:216)
at com.google.android.material.snackbar.Snackbar.make(Snackbar.java:164)
at crc64e888ea48337da3cf.ResumeSuccessListener.n_onSuccess(ResumeSuccessListener.java)
at crc64e888ea48337da3cf.ResumeSuccessListener.onSuccess(ResumeSuccessListener.java:37)
at com.google.android.gms.tasks.zzm.run(com.google.android.gms:play-services-tasks@@18.1.0:1)
at android.os.Handler.handleCallback(Handler.java:958)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:230)
at android.os.Looper.loop(Looper.java:319)
at android.app.ActivityThread.main(ActivityThread.java:9063)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:588)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103)
Caused by java.lang.UnsupportedOperationException: Failed to resolve attribute at index 5: TypedValue{t=0x2/d=0x7f04010e a=-1}, theme={InheritanceMap=[id=0x7f1302sampleapp:style/ThemeOverlay.AppCompat.Dark, id=0x7f13007sampleapp:style/Base.ThemeOverlay.AppCompat.Dark, id=0x7f13016sampleapp:style/Platform.ThemeOverlay.AppCompat.Dark, id=0x7f130169sampleapp:style/Platform.ThemeOverlay.AppCompat], Themes=[sampleapp:style/ThemeOverlay.AppCompat.Dark, forced, sampleapp:style/Theme.PlayCore.Transparent, forced, android:style/Theme.DeviceDefault.Light.DarkActionBar, forced]}
at android.content.res.TypedArray.getColorStateList(TypedArray.java:600)
at android.widget.TextView.readTextAppearance(TextView.java:4559)
at android.widget.TextView.<init>(TextView.java:1480)
at android.widget.Button.<init>(Button.java:174)
at android.widget.Button.<init>(Button.java:149)
at android.widget.Button.<init>(Button.java:125)
at java.lang.reflect.Constructor.newInstance0(Constructor.java)
at java.lang.reflect.Constructor.newInstance(Constructor.java:343)
at android.view.LayoutInflater.createView(LayoutInflater.java:882)
at android.view.LayoutInflater.createView(LayoutInflater.java:804)
at com.android.internal.policy.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:58)
at android.view.LayoutInflater.onCreateView(LayoutInflater.java:958)
at android.view.LayoutInflater.onCreateView(LayoutInflater.java:978)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1032)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:989)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:1151)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1112)
at android.view.LayoutInflater.inflate(LayoutInflater.java:700)
at android.view.LayoutInflater.inflate(LayoutInflater.java:544)
at com.google.android.material.snackbar.Snackbar.makeInternal(Snackbar.java:216)
at com.google.android.material.snackbar.Snackbar.make(Snackbar.java:164)
at crc64e888ea48337da3cf.ResumeSuccessListener.n_onSuccess(ResumeSuccessListener.java)
at crc64e888ea48337da3cf.ResumeSuccessListener.onSuccess(ResumeSuccessListener.java:37)
at com.google.android.gms.tasks.zzm.run(com.google.android.gms:play-services-tasks@@18.1.0:1)
at android.os.Handler.handleCallback(Handler.java:958)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:230)
at android.os.Looper.loop(Looper.java:319)
at android.app.ActivityThread.main(ActivityThread.java:9063)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:588)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103)
My observation seems to directly link the crash to this library. The stack trace seems to show the error occurring within the ResumeSuccessListener of this library and it does indeed use the Snackbar.
https://github.com/oscoreio/Maui.Android.InAppUpdates/blob/58cbf7fe6bcb38bb8d99c37340bd0c5d5cb135cc/src/libs/Maui.Android.InAppUpdates/Platforms/Android/DefaultUserInterface.cs#L22C4-L46C6
My styles.xml correctly inherits from Theme.MaterialComponents
<?xml version="1.0" encoding="utf-8" ?>
<resources>
<style name="Maui.MainTheme" parent="Theme.MaterialComponents.DayNight">
<item name="android:autofilledHighlight">@android:color/transparent</item>
</style>
</resources>
We are seeing on a small set of devices from Firebase CRASHLYTICS the following crash.
Crash Details
My observation seems to directly link the crash to this library. The stack trace seems to show the error occurring within the
ResumeSuccessListenerof this library and it does indeed use theSnackbar.https://github.com/oscoreio/Maui.Android.InAppUpdates/blob/58cbf7fe6bcb38bb8d99c37340bd0c5d5cb135cc/src/libs/Maui.Android.InAppUpdates/Platforms/Android/DefaultUserInterface.cs#L22C4-L46C6
My styles.xml correctly inherits from
Theme.MaterialComponents