0
我试图在模拟器上运行我的项目,但iOS端未激活,只有Watch端设法激活。WatchConnectivity在模拟器上运行时未在iOS端激活
这里是我的ScoresInterfaceController.swift(观看侧)
import WatchConnectivity
class ScoresInterfaceController: WKInterfaceController, WCSessionDelegate {
// Used to send information to the iOS app
var applicationDict = [String: Int]()
// Starts a session to communicate with the iOS app
var session: WCSession!
// For WCSession
override init() {
super.init()
if(WCSession.isSupported()) {
session = WCSession.default()
session.delegate = self
session.activate()
}
}
func session(_ session: WCSession,
activationDidCompleteWith activationState: WCSessionActivationState,
error: Error?) {}
这里是我的ScoreViewController.swift(iOS版侧)
import WatchConnectivity
class ScoreViewController: UIViewController, WCSessionDelegate {
// Starts a session to communicate with the Watch app
var session: WCSession!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
if(WCSession.isSupported()) {
session = WCSession.default()
session.delegate = self
session.activate() //Not activating when run on Simulator
}
}
// For WCSession
/** Called when the session has completed activation. If session state is WCSessionActivationStateNotActivated there will be an error with more details. */
@available(iOS 9.3, *)
func session(_ session: WCSession, activationDidCompleteWith activationState: WCSessionActivationState, error: Error?) {}
// Receives data from Watch app
@nonobjc func session(session: WCSession, didReceiveApplicationContext applicationContext: [String : AnyObject]) {}
func sessionDidBecomeInactive(_ session: WCSession) {}
func sessionDidDeactivate(_ session: WCSession) {
WCSession.default().activate()
}
}
以下是错误消息:
我按照这个教程,但我无法弄清楚什么问题是:
http://kristina.io/watchos-2-how-to-communicate-between-devices-using-watch-connectivity/