我正在使用 googlecast sdk iOS 4.0.2 版本在同一 wifi 网络下查找可投射设备,iOS 版本为 10.0 或更高版本。
我创建了一个单例,并将侦听器注册到它,当第一次找到设备时成功调用它。之后就不能再叫了。
因为我不需要自动启动它,所以下面是我初始化castcontext的代码。
let criteria = GCKDiscoveryCriteria.init(applicationID: kGoogleCastApplicationID)
let options = GCKCastOptions.init(discoveryCriteria: criteria)
options.disableDiscoveryAutostart = false
options.stopReceiverApplicationWhenEndingSession = true
GCKCastContext.setSharedInstanceWith(
我将其设置为 false 是因为 sdk 中有以下注释。
/**
* A flag indicating whether the discovery of Cast devices should start automatically at
* context initialization time. If set to <code>NO</code>, discovery can be started and stopped
* on-demand by using the methods GCKDiscoveryManager::startDiscovery and
* GCKDiscoveryManager::stopDiscovery.
*
* @since 3.4
*/
这是我如何开始和停止它。
开始
func startDiscovery() {
if !discoveryManager.discoveryActive {
registerDiscover()
discoveryManager.startDiscovery()
}
}
停止
func stopDiscovery() {
if discoveryManager.discoveryActive {
removeDicover()
discoveryManager.stopDiscovery()
}
}
还有一件更奇怪的事情是,在控制台上,我看到TIC Read Status [5:0x0]: 1:57
应用程序在前台和后台之间切换时,现在我的代表被调用了。无论如何,这无济于事。
任何人都可以帮助我正确使用 googlecast sdk 手动启动和停止它。
提前致谢。