【问题标题】:How can I pass other custom data to my custom VideoCastControllerActivity in Cast Companion library?如何将其他自定义数据传递给 Cast Companion 库中的自定义 VideoCastControllerActivity?
【发布时间】:2015-03-05 18:10:12
【问题描述】:

我正在使用 CCL 在我的 android 应用程序中实现转换功能。 CCL 有一个目标活动(默认为 VideoCastControllerActivity),它将在用户单击迷你播放器或通知时启动。如果我有其他要传递给该活动的数据,那么正确的方法是什么?数据基本上只是一个id号。

看起来您正在播放的媒体的 MediaInfo 数据以捆绑包的形式传递给 Activity。我看到有一个 JSON 字段可以传递其他自定义数据。

void setCustomData(org.json.JSONObject customData) { /* compiled code */ }

public org.json.JSONObject getCustomData() { /* compiled code */ }

我可以将该 ID 号转换为 JSON 并将其与媒体信息一起放入,但我不确定我是否滥用了该属性,或者这是否意味着它的用途?还有其他更干净的方法吗?

【问题讨论】:

  • MediaInfo 上的 customData 被传递给 Cast 接收器。这也作为 mVideoCastManager.getRemoteMediaInformation().getCustomData() 的一部分返回。通常,这用于识别正在播放的远程媒体,以便您可以发送本地媒体 ID 等数据。您打算在哪里使用身份证号码?如果它用于关联远程播放的媒体,那么这是最好的方法。
  • 在我的自定义播放器活动中显示了一些其他自定义数据,这些数据在初始化 VideoCastManager(基本上是我的自定义 VideoCastControllerActivity)时被指定为目标。我所需要的只是那里的 ID 号,以便从内容提供者那里获取和恢复该数据以显示在播放器活动中。
  • 可以使用MediaInfo的customData字段; (在序列化和反序列化之后)传递给 VideoCastControllerActivity。它也会传递给接收者,但只要您的接收者不关心该数据,它就没有关系。
  • 谢谢阿里。我希望你能插话并确认这没问题。您能否将其作为答案,以便我可以继续接受并将此问题标记为已回答。

标签: android android-cast-api castcompanionlibrary


【解决方案1】:

还有另一种方法可以使用类似这样的自定义通道发送自定义数据

  Cast.CastApi.sendMessage(mApiClient, Namespace, message)
                    .setResultCallback(new ResultCallback<Status>() {

                        @Override
                        public void onResult(Status result) {
// result
  }

     });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-18
    • 1970-01-01
    • 1970-01-01
    • 2013-03-15
    • 2021-11-08
    • 2012-08-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多