一个星期以来,我一直无法使Google Cast SDK正常运行。我已经成功建立了与Chromecast接收器的连接,至少日志记录如此,我的 GCKSessionManagerListener 也是如此。
这是我的应用程序流到现在的程度:
我以AVPlayer(u3m8格式)开始直播视频
等待Google Cast按钮在导航栏上可见
然后选择我的Chromecast接收器。
在SessionManagerListener上-didStart(已建立连接),我在SessionManager的currentCastSession上请求loadMedia,我还尝试加载队列,音频,图像,没有任何触发出现默认接收器应用程序。我希望有人会发现代码/逻辑中的缺陷。 这是所有相关的代码:
在应用程序启动时初始化:
let options = GCKCastOptions(discoveryCriteria:
.init(applicationID: kGCKDefaultMediaReceiverApplicationID))
GCKCastContext.setSharedInstanceWith(options)
GCKLogger.sharedInstance().delegate = self
“构建”按钮:
let frame = CGRect(x: 0, y: 0, width: 24, height: 24)
let castButton = GCKUICastButton(frame: frame)
castButton.tintColor = UIColor.white
return UIBarButtonItem(customView: castButton)
在我的SessionManagerListener上->
func sessionManager(_ sessionManager: GCKSessionManager, didStart session: GCKSession) {
let mediaInfo = GCKMediaInformation(contentID: url, streamType: .live,
contentType: "video/m3u", metadata: nil, adBreaks: nil,
adBreakClips: nil, streamDuration: .infinity,
mediaTracks: nil, textTrackStyle: nil, customData: nil)
print("loading media: \(String(describing: mediaInfo))")
let request = sessionManager.currentCastSession?
.remoteMediaClient?.loadMedia(mediaInfo)
request?.delegate = self
}
我的想法简直用光了,我正在向你们寻求帮助,谢谢大家的宝贵时间!
答案 0 :(得分:0)
好吧,似乎代码很好,并且Chromecast设备有故障。更换设备后,所有先前的请求开始没有问题。当然不支持的文件除外。