gpt4 book ai didi

ios - Glance 界面中的 WCSession(Watch OS 2.0)

转载 作者:可可西里 更新时间:2023-11-01 05:43:40 25 4
gpt4 key购买 nike

我正在尝试使用 glance 消息(watchOS 2.0 中引入的新 WatchConnectivity 的一部分)。在我看来,我有 Controller 。

-(void)willActivate {
[super willActivate];

if ([WCSession isSupported]) {
WCSession *session = [WCSession defaultSession];
session.delegate = self;
[session activateSession];
}

}

这在主界面中有效,尽管需要几秒钟才能在模拟器中实际访问。我通过检查 sessionReachabilityDidChange: 来监控可达性。但是,仅在我的浏览界面中,它永远无法访问。如果无法访问,我将无法从手机中检索数据。有人遇到过这个吗?也许这只是一个模拟器问题。我正在使用 xCode 7 Beta 5。

谢谢!

最佳答案

只有一个共享 WCSession 对象,并且它只有一个委托(delegate),因此在应用程序的 init/willActivate 中设置两次,然后在 Glance init/willActivate 中设置它会导致问题。

可行的方法是在WKExtensionDelegate的init方法中设置

class ExtensionDelegate: WKExtensionDelegate, WCSessionDelegate{

let TAG : String = "ExtensionDelegate: "
let session = WCSession.defaultSession()

override init () {
super.init()

println("\(TAG) - init")
println("\(TAG)Setting delegate and Activating WCSession.defaultSession()...")

session.delegate = self
session.activateSession()
}

.
.
.
}

关于ios - Glance 界面中的 WCSession(Watch OS 2.0),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32076709/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com