该示例应用程序 https://github.com/commonsguy/cw-omnibus/tree/master/MediaRouter/RemotePlayback我的曾经工作得很好。
不过,在过去几个月的某个时候,Google 更新了 Google Play 服务(以及 Chromecast 本身),现在当我打电话时play()
on RemotePlaybackClient
对于 Chromecast,Google Play 服务本身会崩溃:
E/AndroidRuntime﹕ FATAL EXCEPTION: main
java.lang.NullPointerException
at com.google.android.gms.cast.media.aq.a(SourceFile:96)
at com.google.android.gms.cast.media.n.i(SourceFile:1856)
at com.google.android.gms.cast.media.u.run(SourceFile:2092)
at android.os.Handler.handleCallback(Handler.java:730)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5103)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
请注意,play()
调用本身就达到了预期的效果,Chromecast 播放媒体。但在它调用之后的某个时间ItemActionCallback
with onResult()
,上述 Google PLAY 服务崩溃的情况发生。这反过来会导致与 Chromecast 的连接崩溃,所以我的MediaRouteActionProvider
消失,我必须重新运行我的应用程序才能再次连接,尽管 Chromecast 实际上正在播放我请求的媒体。
我已经使用两台设备(Nexus 4 和 Galaxy Nexus)进行了测试,结果相同。
我什至创建了一个新的应用程序,试图只显示图像(而不是像原始示例那样播放电影),但我遇到了同样的崩溃。
有没有人看到这个并找到一些解决方法/修复/其他什么?
正如评论链中指出的,这是由 Google Play 服务中的错误引起的,现已修复。非常感谢 Ali Naddaf 的帮助!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)