将数据从 Apple Watch 发送到 iPhone
Posted
技术标签:
【中文标题】将数据从 Apple Watch 发送到 iPhone【英文标题】:Sending Data from Apple Watch to iPhone 【发布时间】:2019-10-16 09:21:49 【问题描述】:我目前使用的是 Xcode 11.1,我在网上的任何地方都没有看到这个错误。
我希望能够,因此我创建了一个应用程序,它使用从 Apple Watch 到 iPhone 的 sendMessage。
在 ViewController.swift 中,我有
override func viewDidLoad()
super.viewDidLoad()
// Do any additional setup after loading the view.
self.wcSession = WCSession.default
self.wcSession.delegate = self
self.wcSession.activate()
func session(_ session: WCSession, didReceiveMessage message: [String : Any], replyHandler: @escaping ([String : Any]) -> Void)
print(message["test"])
在我的 InterfaceController.swift 中,我有
@IBAction func sendToPhone()
transferToPhone = ["test": "FROM WATCH"]
wcSession.sendMessage(transferToPhone, replyHandler: reply in print("done"), errorHandler: error in print(error.localizedDescription))
print("sent data over to phone")
我从中得到的错误是
2019-10-16 17:14:39.345525+0800 sendTest WatchKit Extension[7302:293398] [WC] WCSession ios app not installed
2019-10-16 17:14:39.348442+0800 sendTest WatchKit Extension[7302:293398] [WC] -[WCSession _onqueue_notifyOfMessageError:messageID:withErrorHandler:] (null) errorHandler: YES with WCErrorDomain:7018
Companion app is not installed.
但是,iPhone 和 Watch 应用程序都已安装。我什至可以将数据从 iPhone 发送到 Watch 应用程序。我目前将 iPhone 的 UpdateApplicationContext 用于 Watch,将 Watch 的 SendMessage 用于 iPhone。
【问题讨论】:
对于以后看到此问题的任何人来说,这似乎是 Apple SDK 的问题。它在 iPhone 和 Apple Watch 上完全可以正常工作,但在运行 iOS 13.1 和 watchOS 6 的 Xcode 11.1 的模拟器上无法正常工作 【参考方案1】:我无法在 Xcode 11.1 (11A1027) 中重现这一点。我建议在开发者工具 → 模拟器下的反馈助手中提交错误报告。确保在终端中运行xcrun simctl diagnose
,然后将输出的模拟器日志附加到报告中。
也许现在下载最新的 Xcode 11.2 测试版会有所帮助?
【讨论】:
嘿,奥斯汀!感谢您的回复。在我看来,问题出在 SDK 上,因为我能够在自己的 iPhone 和 Apple Watch 上运行该应用程序。我一定会向 Apple 发送报告。【参考方案2】:检查 Xcode 项目的 WatchKit 扩展目标中是否勾选了“Supports Running without iOS App Installation”。 如果已选中,请取消选中。
【讨论】:
感谢在“常规”>“部署信息”下找到复选框,但现在我有一个“目标'###'和'### WatchKit Extension'之间的依赖关系循环;构建可以产生结果不可靠……”。以上是关于将数据从 Apple Watch 发送到 iPhone的主要内容,如果未能解决你的问题,请参考以下文章
如何将 int 从 iPhone 发送到 Apple Watch 标签(objective-c)
如何从 Apple Watch 获取实时健康更新,与健康工具包同步并将其发送到服务器?
Apple Watch:这是让 Apple Watch 应用获取新数据的好方法吗?
如何在 Objective-C 中的 OS2 中将数据从 Iphone 发送到 Apple Watch