在版本 2 中,发件人应用程序能够发送消息。
func deviceManager(_ deviceManager: GCKDeviceManager!,
didConnectToCastApplication
applicationMetadata: GCKApplicationMetadata!,
sessionID: String!,
launchedApplication: Bool) {
deviceManager.add(self.textChannel)
}
但是,API 说我们现在使用的是 GCKSessionManager 而不是 GCKDeviceManager。
API 说我必须有一个 GCKSession 添加 textChannel,我在这里做了:一旦会话开始,我添加 textChannel(因为 sessionManager.currentCastSession 在会话开始之前为 nil)。
func sessionManager(_ sessionManager: GCKSessionManager, didStart session: GCKSession) {
if session.device == connectionQueue {
connectionQueue = nil
}
self.sessionManager!.currentCastSession!.add(textChannel)
print("")
}
同时,我在另一个函数中发送短信:
let result = self.textChannel.sendTextMessage("\(self.textField.text)", error: &error)
但是结果总是假的,错误总是“Channel is not connected or is not registered with a session”。此外,当我这样做时:
print("isConnected1 \(self.textChannel.isConnected)")
结果是假的。你知道我还缺少哪些其他步骤来连接它吗?