Google 的 MediaNotificationService 中存在大量 RemoteServiceExceptions
Large number of RemoteServiceExceptions in Google's cast MediaNotificationService
在过去的 ~24 小时内,我们在 Google 的 MediaNotificationService
:
中看到了数千次崩溃
Fatal Exception: android.app.RemoteServiceException
Context.startForegroundService() did not then call Service.startForeground(): ServiceRecord{f9a4deb u0 <our package name>/com.google.android.gms.cast.framework.media.MediaNotificationService}
android.app.ActivityThread$H.handleMessage (ActivityThread.java:1855)
android.os.Handler.dispatchMessage (Handler.java:106)
android.os.Looper.loop (Looper.java:214)
android.app.ActivityThread.main (ActivityThread.java:6986)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:494)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1445)
我在创建自己的前台服务时遇到过类似的问题,但由于这是在演员库中,我们无法控制它。
Chromecast 接收器由第三方处理。我们正在使用:
api "com.google.android.gms:play-services-cast:17.0.0"
api "com.google.android.gms:play-services-cast-framework:17.0.0"
潜在线索:
- 在 OnePlus、华为、三星 Google 上,似乎每个制造商(和 OS 级别)都在与其市场份额相关的数字上发生。
- 崩溃发生在不同设备的不同线路上(例如,上面是 Galaxy S9,S8 崩溃发生在线路 1872 上),因此没有在 Crashlytics 上归为一组。这向我表明这是 OS / Google Play 服务级别问题。
- 崩溃发生在应用程序的所有活动版本中,同时开始。
- 数月来崩溃的次数一直很少,但在周末突然激增,而且丝毫没有放缓的迹象。
更新:终于成功重现了。当在屏幕锁定的情况下长时间投射内容,然后与设备断开连接时,会发生崩溃。也许离解决方案又近了一步...
看起来像a known issue:
Issue occured only on HUAWEI devices with Android 9 : P20 pro, P30 pro, P20 lite, P30, P20, Honor View 10, Mate 20 pro
Cast SDK version : Android Sender 16.2.0
(I checked release notes of Android Sender 17.1.0 but no bug fixes)
Here is the crash log from fabric :
Fatal Exception: android.app.RemoteServiceException: Context.startForegroundService() did not then call Service.startForeground(): ServiceRecord{3ac0035 u0 com.google.android.gms.cast.framework.media.MediaNotificationService}
at android.app.ActivityThread$H.handleMessage + 2126(ActivityThread.java:2126)
at android.os.Handler.dispatchMessage + 112(Handler.java:112)
at android.os.Looper.loop + 216(Looper.java:216)
at android.app.ActivityThread.main + 7625(ActivityThread.java:7625)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run + 524(RuntimeInit.java:524)
at com.android.internal.os.ZygoteInit.main + 987(ZygoteInit.java:987)
a Google engineer says is fixed:
We have a fix for this and that should be released by the next Android Cast client library release.
但是they don't know when the fix will be released:
So far we don't have a solid date when the next release will be scheduled. We will update it here or else please do check here https://developers.google.com/cast/docs/release-notes
release notes 没有提及对此的修复。
如果我发现任何进一步的问题,我会更新这个答案。
更新
这是固定的。参见 。
更新
18.0.0
存在一些问题。参见 。
此外,关于此问题的评论者仍然遇到 Samsung and Huawei platforms, but at greatly decreased rates. I filed a new issue 的崩溃。
修复已在 Android Cast SDK 客户端库 v18.0.0 上发布(查看发行说明的第二项:https://developers.google.com/cast/docs/release-notes#december-5,-2019)
更新到 v18.0.0 后应该会修复崩溃问题
我们也遇到了这个问题非常 相似的症状。我们正在使用 cast SDK 版本 16.1.2
- 仅在 Android 8 及更高版本上发生。好像跟后台执行改动有关here
- 连续几个月的数字也很低。最近在所有应用程序版本中激增。现在查看数以千计的数字。
- 2 月 11 日有一个播放服务更新。可以链接吗?
我们的尝试(更新到 SDK 18.0.0)
更新到 v18.0.0 似乎解决了 . However, 18.0.0 introduced behaviour changes around the retrieval of custom data. We have observed that the custom data we supply to the remoteMediaClient's mediaInfo 报告的问题(然后尝试检索)在发件人应用程序断开连接然后重新连接时无效。如果你还没有,这将需要防范!
在过去的 ~24 小时内,我们在 Google 的 MediaNotificationService
:
Fatal Exception: android.app.RemoteServiceException
Context.startForegroundService() did not then call Service.startForeground(): ServiceRecord{f9a4deb u0 <our package name>/com.google.android.gms.cast.framework.media.MediaNotificationService}
android.app.ActivityThread$H.handleMessage (ActivityThread.java:1855)
android.os.Handler.dispatchMessage (Handler.java:106)
android.os.Looper.loop (Looper.java:214)
android.app.ActivityThread.main (ActivityThread.java:6986)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:494)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1445)
我在创建自己的前台服务时遇到过类似的问题,但由于这是在演员库中,我们无法控制它。
Chromecast 接收器由第三方处理。我们正在使用:
api "com.google.android.gms:play-services-cast:17.0.0"
api "com.google.android.gms:play-services-cast-framework:17.0.0"
潜在线索:
- 在 OnePlus、华为、三星 Google 上,似乎每个制造商(和 OS 级别)都在与其市场份额相关的数字上发生。
- 崩溃发生在不同设备的不同线路上(例如,上面是 Galaxy S9,S8 崩溃发生在线路 1872 上),因此没有在 Crashlytics 上归为一组。这向我表明这是 OS / Google Play 服务级别问题。
- 崩溃发生在应用程序的所有活动版本中,同时开始。
- 数月来崩溃的次数一直很少,但在周末突然激增,而且丝毫没有放缓的迹象。
更新:终于成功重现了。当在屏幕锁定的情况下长时间投射内容,然后与设备断开连接时,会发生崩溃。也许离解决方案又近了一步...
看起来像a known issue:
Issue occured only on HUAWEI devices with Android 9 : P20 pro, P30 pro, P20 lite, P30, P20, Honor View 10, Mate 20 pro
Cast SDK version : Android Sender 16.2.0 (I checked release notes of Android Sender 17.1.0 but no bug fixes)
Here is the crash log from fabric :
Fatal Exception: android.app.RemoteServiceException: Context.startForegroundService() did not then call Service.startForeground(): ServiceRecord{3ac0035 u0 com.google.android.gms.cast.framework.media.MediaNotificationService}
at android.app.ActivityThread$H.handleMessage + 2126(ActivityThread.java:2126)
at android.os.Handler.dispatchMessage + 112(Handler.java:112)
at android.os.Looper.loop + 216(Looper.java:216)
at android.app.ActivityThread.main + 7625(ActivityThread.java:7625)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run + 524(RuntimeInit.java:524)
at com.android.internal.os.ZygoteInit.main + 987(ZygoteInit.java:987)
a Google engineer says is fixed:
We have a fix for this and that should be released by the next Android Cast client library release.
但是they don't know when the fix will be released:
So far we don't have a solid date when the next release will be scheduled. We will update it here or else please do check here https://developers.google.com/cast/docs/release-notes
release notes 没有提及对此的修复。
如果我发现任何进一步的问题,我会更新这个答案。
更新
这是固定的。参见
更新
18.0.0
存在一些问题。参见
修复已在 Android Cast SDK 客户端库 v18.0.0 上发布(查看发行说明的第二项:https://developers.google.com/cast/docs/release-notes#december-5,-2019)
更新到 v18.0.0 后应该会修复崩溃问题
我们也遇到了这个问题非常 相似的症状。我们正在使用 cast SDK 版本 16.1.2
- 仅在 Android 8 及更高版本上发生。好像跟后台执行改动有关here
- 连续几个月的数字也很低。最近在所有应用程序版本中激增。现在查看数以千计的数字。
- 2 月 11 日有一个播放服务更新。可以链接吗?
我们的尝试(更新到 SDK 18.0.0)
更新到 v18.0.0 似乎解决了