多个类中的 Chromecast 频道
Posted
技术标签:
【中文标题】多个类中的 Chromecast 频道【英文标题】:Chromecast Channels in multiple classes 【发布时间】:2014-11-11 20:37:29 【问题描述】:我有一个 GCKCastChannel 可以在我的应用中从 Chromecast 接收器文件发送和接收消息。
我的最大问题是我的应用程序对所有不同的视图都有多个类,我可以在将应用程序投射到 Chromecast 的视图上发送和接收消息,尽管当我更改视图时我无法发送消息。
我用过
if (!self.deviceManager || !self.deviceManager.isConnected) bla bla bla else bla bla bla
检查 deviceManager 是否知道我们是否已连接等。虽然它回来说我们没有连接到 Chromecast。
任何关于如何从其他类发送消息的想法将不胜感激!
标记
【问题讨论】:
【参考方案1】:GCKDeviceManager 管理一个连接,因此如果您创建一个新连接,它不会知道现有会话。您有几个选择,归结为共享连接对象:
-
将您的 DeviceManager(等)放在 AppDelegate 上,以便在不同的控制器之间共享它们。这大致是 CastVideos 示例使用的方法:https://github.com/googlecast/CastVideos-ios/blob/master/Classes/AppDelegate.h#L24
创建一个作为单例的自定义类以包含 DeviceManager,并为任何其他媒体引用该类。您可以遵循 [class sharedInstance] 约定,然后在任何控制器中访问它。
在其他几个 SO 问题中,关于在类之间共享对象有一些很好的讨论 - 例如 How do I share an object between UIViewControllers on iPhone?
【讨论】:
感谢您的帮助,伊恩! :)以上是关于多个类中的 Chromecast 频道的主要内容,如果未能解决你的问题,请参考以下文章