MediaSessionCompat NullPointerException 仅在 Android 8

MediaSessionCompat NullPointerException only on Android 8

同胞!

所以我的应用程序有问题,那就是使用 MediaSessionCompat。

崩溃的问题只发生在 Android 8 版本(8.1 也是),但主要发生在不同设备上的 8.0.0。

致命异常:java.lang.NullPointerException 尝试在空对象引用

上调用虚拟方法 'java.lang.Object java.lang.ref.Reference.get()'
Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Object java.lang.ref.Reference.get()' on a null object reference
   at android.support.v4.media.session.MediaSessionCompat$Callback$StubApi21.onCommand(MediaSessionCompat.java:955)
   at android.support.v4.media.session.MediaSessionCompatApi21$CallbackProxy.onCommand(MediaSessionCompatApi21.java:164)
   at android.media.session.MediaSession$CallbackMessageHandler.handleMessage(MediaSession.java:1352)
   at android.os.Handler.dispatchMessage(Handler.java:105)
   at android.os.Looper.loop(Looper.java:251)
   at android.app.ActivityThread.main(ActivityThread.java:6572)
   at java.lang.reflect.Method.invoke(Method.java)
   at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)

我搜索了 Google 的论坛,这个问题之前曾在论坛上通过 Whosebug 报告过,但没有成功。

有人可以提供一些提示或建议吗?

问题已通过更新到最新的支持库版本解决。

答案是在 Google 的 bug-tracking 论坛深处找到的。

如果有人遇到同样的问题 - 尝试将您的支持库版本至少更新到 27+ 版本。