Apple Watch WCSession 返回 watchAppInstalled false

Posted

技术标签:

【中文标题】Apple Watch WCSession 返回 watchAppInstalled false【英文标题】:Apple Watch WCSession return watchAppInstalled false 【发布时间】:2015-10-13 15:23:18 【问题描述】:

我有一个 Apple Watch 应用,可以在模拟器(手表模拟器和 iPhone 模拟器)上完美运行。当我在真机上运行应用程序时,WCSessionwatchAppInstalled 属性为 false,但我的应用程序在手表上,因此无法从手表设备启动。

【问题讨论】:

【参考方案1】:

我通过卸载并重新安装手表应用解决了这个问题。在 iPhone 上的 Watch 中,您选择您的应用程序并关闭“在 Apple Watch 上显示应用程序”,然后再打开。

找到了解决方案here。

【讨论】:

是您没有设置代理并激活会话的问题吗?【参考方案2】:

在调用 isWatchAppInstalled 之前,您必须先

    WCSessionDelegate 分配给WCSession.default.delegate 致电WCSession.default.activate()

否则(至少在 WatchOS 5 上),isWatchAppInstalled 将始终返回 false

【讨论】:

以上是关于Apple Watch WCSession 返回 watchAppInstalled false的主要内容,如果未能解决你的问题,请参考以下文章

在 SwiftUI 中使用 WCSession 向 Apple Watch 发送消息

对于 Swift 中的 Apple Watch OS,如何在 WCSession 激活完成后运行函数?

识别 Apple Watch 名称

来自 Apple Watch 的 iOS 实时心率统计数据

来自 Apple Watch 的 iOS 实时心率统计数据

iPhone 和 Apple Watch 之间的 WatchConnectivity 超时错误