Splashscreen api 在 Android 12 上崩溃

问题描述 投票:0回答:1

我的 Android 应用程序在发布到 Playstore 后由于新的闪屏 api 实现而崩溃。根据 crashlytics,一些用户在闪屏问题中遇到了崩溃

我已经在 Android 设备 API 级别版本 12、13、14 闪屏中进行了测试,运行良好,但无法重现崩溃。

崩溃详情: 请提出任何解决方案

致命异常:java.lang.NullpointerException

尝试在空对象引用上调用虚拟方法“android.view.View android.view.window.peekDecorview()”

android.app.ActivityThread.handleAttachSplashScreenView(ActivityThread.java:4634)

android.app.servertransaction.TransferSplashScreenViewStateItem.execute(TransferSplashScreenViewStateItem.java:40)

android.app.servertransaction.ActivityTransactionItem.execute(ActivityTransactionItem.java:45)

android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:139)

android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:96)

android.app.ActivityThread$H.handleMessage(ActivityThread.java:2685)

android.os.Handler.dispatchMessage(Handler.java:106)

android.os.Looper.loopOnce(Looper.java:230)

android.os.Loop(Looper.java:319)

android.app.ActivityThread.main(ActivityThread.java:8919)

Java.lang.reflect.Method.invoke(Method.java)

com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:578)

com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103)

android firebase kotlin android-studio mobile
1个回答
0
投票

如果没有更多有关哪些设备的信息,很难判断 正在发生崩溃以及他们的 Android 版本。

但是您似乎在向新的 SplashScreen Api 迁移时遇到了问题。 您可以在此处查看完整说明:https://developer.android.com/develop/ui/views/launch/splash-screen/migrate

根据Window类定义: https://developer.android.com/reference/android/view/Window

peekDecorView() 返回窗口当前的 DecorView null。 DecorView 是保存窗口背景的内容,在您的情况下是 SplashScreen 窗口。所以我猜你的一些用户在设置 Drawable Icon 背景时遇到了麻烦,这导致你的 DecorView 变成空。

© www.soinside.com 2019 - 2024. All rights reserved.