在RemotePlaybackClient上调用play()时,Google Play服务中的NullPointerException

时间:2014-11-13 00:21:04

标签: android google-play-services chromecast

我的This sample application曾经工作得很好。

在过去几个月的某个地方,Google更新了Google Play服务(以及Chromecast本身),现在当我在play()为Chromecast致电RemotePlaybackClient时,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调用onResult()之后的某个时间,Google Play Play服务中出现了上述崩溃。反过来,这导致与Chromecast的连接崩溃,因此我的MediaRouteActionProvider消失了,我不得不重新运行我的应用再次连接,尽管Chromecast实际上播放了我要求的媒体。

我使用两个设备(Nexus 4和Galaxy Nexus)对此进行了测试,结果相同。

我甚至创建了一个新的应用程序,试图只显示一个图像(而不是像原始样本那样播放电影),我也遭遇了同样的崩溃。

有没有人见过这个并找到一些解决方法/修复/其他什么?

2 个答案:

答案 0 :(得分:1)

如评论链中所述,这是由Google Play服务中的错误引起的,该错误现已修复。非常感谢Ali Naddaf的帮助!

答案 1 :(得分:-1)

您视频的某些内容导致GMS崩溃。我的示例应用程序遇到了同样的问题。我将您的视频更改为指向:http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4并且有效。