首页 > 解决方案 > 捆绑更新时出现 IllegalStateException

问题描述

Play Console 指出了一个奇怪的异常情况。在我开始推出新的应用程序版本后,我看到了大量的崩溃。

在新的应用程序版本中,我删除了Adobe Creative SDK库。
应用程序崩溃 - 如果我理解正确的话 - 当之前的版本将被更新时。具有讽刺意味的是,崩溃是由 Adob​​e Creative SDK 库引起的。

崩溃堆栈跟踪:

java.lang.RuntimeException: 
   at android.app.ActivityThread.handleReceiver (ActivityThread.java:3705)
   at android.app.ActivityThread.-wrap18 (Unknown Source)
   at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1979)
   at android.os.Handler.dispatchMessage (Handler.java:108)
   at android.os.Looper.loop (Looper.java:166)
   at android.app.ActivityThread.main (ActivityThread.java:7425)
   at java.lang.reflect.Method.invoke (Native Method)
   at com.android.internal.os.Zygote$MethodAndArgsCaller.run (Zygote.java:245)
   at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:921)
Caused by: java.lang.IllegalStateException: 
   at android.app.ContextImpl.startServiceCommon (ContextImpl.java:1701)
   at android.app.ContextImpl.startService (ContextImpl.java:1657)
   at android.content.ContextWrapper.startService (ContextWrapper.java:644)
   at android.content.ContextWrapper.startService (ContextWrapper.java:644)
+> at com.adobe.creativesdk.aviary.internal.cds.CdsReceiver.handlePackageReplaced (CdsReceiver.java:123)
|  at com.adobe.creativesdk.aviary.internal.cds.CdsReceiver.onReceive (CdsReceiver.java:103)
|  at android.app.ActivityThread.handleReceiver (ActivityThread.java:3695)
|
+––– this causes the crash

在我全面推出之前,有什么办法可以修复这样的崩溃?

不幸的是,我无法在我拥有的测试设备上重现它。

它似乎也发生在 Android 8.0 和 8.1 上。

非常感谢任何帮助!如果你想看更多,告诉我,我在这里添加。

标签: androidgoogle-playadobecreativesdk

解决方案


如果在要更换应用程序时旧版本的应用程序崩溃,我不会太担心。无论如何,该应用程序将在更换期间停止。我怀疑 Creative SDK 的开发人员在他们的代码中存在错误,因为他们认为他们的包永远不会被删除。修复它的唯一方法是鼓励当时的 Adob​​e 开发人员修复它,我怀疑他们不太可能修复一个错误,从而更容易从他们的产品中迁移出来。


推荐阅读