我正在尝试为自己的应用开发学习这款环球音乐播放器示例。我从来没有想到这一点,所以到目前为止还没有尝试过,但是当流式传输到Chromecast Audio时,来自GitHub的样本表现得很奇怪。我没有在任何地方找到任何相关的信息,所以我一直在发布这个问题,希望从你们那些有UAMP经验的人那里得到一些提示。
当我在json列表(从默认的Google服务器)播放歌曲到Chromecast Audio并选择列表中的另一首歌或尝试跳到下一首歌时,会抛出错误(请参阅下面的日志) 5次,它不会进入下一首或选定的歌曲。相反,它只是转移到列表上的随机歌曲,或继续播放相同的歌曲。这是通过GitHub代码直接编译并在平板电脑上运行,无需任何修改。如果不使用Chromecast(即直接在平板电脑上播放),则不会发生这种情况。对于凌乱的日志消息感到抱歉。希望有人对此有一些经验/知识,可以给我一个提示!
11-15 03:08:49.792 18204-18204/com.example.android.uamp
E/MediaNotificationServiceImpl: Unregistering trampoline BroadcastReceiver failed
java.lang.IllegalArgumentException: Receiver not registered: yy@8f7a15d
at android.app.LoadedApk.forgetReceiverDispatcher(LoadedApk.java:789)
at android.app.ContextImpl.unregisterReceiver(ContextImpl.java:1200)
at android.content.ContextWrapper.unregisterReceiver(ContextWrapper.java:576)
at yx.b(:com.google.android.gms.DynamiteModulesC@11746440:105)
at yp.onTransact(:com.google.android.gms.DynamiteModulesC@11746440:22)
at android.os.Binder.transact(Binder.java:392)
at com.google.android.gms.internal.zzed.zzb(Unknown Source)
at com.google.android.gms.cast.framework.media.zze.onDestroy(Unknown Source)
at com.google.android.gms.cast.framework.media.MediaNotificationService.onDestroy(Unknown Source)
at android.app.ActivityThread.handleStopService(ActivityThread.java:3244)
at android.app.ActivityThread.-wrap21(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1591)
at android.os.Handler.dispatchMessage(Handler.java:111)
at android.os.Looper.loop(Looper.java:207)
at android.app.ActivityThread.main(ActivityThread.java:5728)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:888)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:749)
答案 0 :(得分:0)
我最初在GitHub上报告了这一点,等待时找到了解决方法,如下所述:
https://github.com/googlesamples/android-UniversalMusicPlayer/issues/182
它基本上调整了CastPlayback.java,以便在更改媒体信息的情况下不会多次调用播放方法。