当我运行在Xcode iOS和watchOS模拟器的手表连接的应用程序,WCSession委托方法didReceiveApplicationContext仅适用于第一次,但随后它不叫,并在接口控制器没什么变化。谁能解释一下为什么会发生这种情况?
下面是 UIViewController 的 WCSessionVC 类
import Foundation
import UIKit
import WatchConnectivity
class WCSessionVC: UIViewController, WCSessionDelegate {
let session = WCSession.default
override func viewDidLoad() {
super.viewDidLoad()
session.delegate = self
session.activate()
}
func updateApplicationContext(applicationContext: [String : Any]) throws {
if WCSession.default.isPaired {
do {
try WCSession.default.updateApplicationContext(applicationContext)
} catch let error {
throw error
}
}
}
func session(_ session: WCSession, activationDidCompleteWith activationState: WCSessionActivationState, error: Error?) {
print("Session activated")
let message = ["quote": "Hello"]
do {
try self.updateApplicationContext(applicationContext: message …
Run Code Online (Sandbox Code Playgroud)