我正在尝试使用 Xcode 开发我的第一个 Apple Watch 到 iPhone 文件传输应用程序。
使用 iPhone SE 2nd 和 Apple Watch series 8 41mm 实际设备,我可以在两种设备上运行该应用程序。
在这种情况下,如果iPhone端应用先启动,那么iPhone端应用会在Apple Watch端应用启动时终止。这可以避免吗?
override init() {
super.init()
// if WCSession.default.isReachable {
if WCSession.isSupported() {
WCSession.default.delegate = self
WCSession.default.activate()
}
}
func session(_ session: WCSession, didReceiveMessageData messageData: Data) {
let documentsURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first!
let audioFileURL = documentsURL.appendingPathComponent(audioFilename)
do {
try messageData.write(to: audioFileURL, options: .atomicWrite)
} catch {
print("Error writing and playing audio: \(error.localizedDescription)")
}
}
let audioData = try Data(contentsOf: audioFileURL)
// if WCSession.default.isReachable {
if WCSession.isSupported() {
WCSession.default.sendMessageData(audioData, replyHandler: { response in
print("Audio sent successfully: \(response)")
}, errorHandler: { error in
print("Error sending audio: \(error.localizedDescription)")
})
}
目前正在输出以下错误日志,我想更改启动顺序。
[WC] WCSession counterpart app not installed
[WC] WCSession has not been activated