我指的是https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_media_status.html#a45e3eb39e674f5d0dbfd78deef77a1e6

可以帮助我使用api,但是GCKMediaStatus类的初始化程序说:
-(实例类型)initWithSessionID:(NSInteger)mediaSessionID
mediaInformation:(GCKMediaInformation *)mediaInformation

注意:这是使用Objective-c语法的,但是Swift的工作原理与以前相同,除了Swift语言...

尽管如此,我似乎无法弄清楚如何检索mediaSessionID以便能够将此类的实例初始化为新变量。

我正在尝试做以下事情,以使我最终进入称为streamPosition的此类中的方法,该方法将像这样:

    var mediaStatus = GCKMediaStatus(sessionID: Int, mediaInformation: GCKMediaInformation!)
    var currentStreamPosition = mediaStatus.streamPosition()


其中Int是mediaSessionID而不是chrome Cast的sessionID(请阅读下面的附加部分!)和GCKMediaInformation!将是GCKMediaInformation类的实例。 (我认为)如果我在任何一个参数上都不对,请纠正我。

然后,我可以使用这些数据。但是当我这样做时,我想我的currentStreamPosition默认为0,这就是我打印到currentStreamPosition变量时得到的结果。

注意:我已经连接到当前正在播放的媒体,并且可以暂停,播放并在流中寻找任意数字。这一切正常。所以现在我已连接上,其他所有东西都可以正常工作。

用例:使用此方法,我希望能够提前15秒或快退15秒等,但是我没有找到任何帮助。

还-不要让sessionID与mediaSessionID混淆!我可以成功获取sessionID并打印出来。我的问题是与mediaSessionID。

附加信息:自动完成是Xcode表示这是标记为名称的参数:

    GCKMediaStatus(sessionID: Int, mediaInformation: GCKMediaInformation!)


请注意,第一个参数为sessionID,类型为int。但是在https://developers.google.com/cast/docs/ios_sender上,如果您发现sessionID的类型为String! (可选的String)。

我认为这个标签在Xcode中被误命名为自动完成功能。我认为它应该命名为mediaSessionID而不是sessionID,因为这是我在第一个链接上显示的文档。

任何帮助将非常感激。

谢谢!

最佳答案

要获取流位置,请使用GCKMediaControlChannel上的方法approximateStreamPosition

关于ios - 获取mediaSessionID,用于在iOS的Swift中转换的Chrome上播放的当前媒体,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34245221/

10-14 14:04