gpt4 book ai didi

ios - WatchOS 应用程序未检测到配套的 iOS 应用程序

转载 作者:行者123 更新时间:2023-11-30 10:26:50 25 4
gpt4 key购买 nike

我正在制作一个独立的 Apple Watch 应用程序(但带有配套的 iPhone 应用程序,这对于 watch 应用程序的运行来说不是必需的。)

如果安装了 iPhone 配套应用程序,该应用程序将使用 WatchConnectivity 在设备之间同步数据。我可以在 iOS 应用程序上调用 session.updateApplicationContext() 并在 Watch 应用程序上接收 session(didReceiveApplicationContext) 。但走另一条路是不可能的。我总是收到 NSError 代码 7018,这意味着未安装 iOS 配套应用程序。

我已经确保 watchOS 和 iOS 应用程序都安装在模拟器中(并在我的实际设备 iPhone 11 和 Watch 系列 5 上进行了测试。)但是从 watchOS -> iOS 得到了相同的失败结果。

我注意到有一个新的 WCSession 实例变量可用于 watchOS 6.0+ isCompanionAppInstalled。当我在 watch 应用程序上激活 WCSession 后读取此变量时,它总是返回 false。

还有什么需要注意的吗?我想也许我在所有不同的 info.plist 中做错了什么。但我已经检查过很多次了。

<小时/>

我的 info.plist 文件:

在我的 watch 应用程序中:

 WKWatchKitApp is YES
WKCompanionAppBundleIdentifier is com.abc.myapp

在我的 watch 扩展中:

  App can run independently of companion iPhone app is YES
NSExtension
WKAppBundleIdentifier is com.abc.myapp.watchkitapp
NSExtensionPointIdentifier is com.apple.watchkit
  • iOS 应用程序包标识符为 com.abc.myapp
  • watchOS 应用程序是 com.abc.myapp.watchkitapp
  • watchOS 应用扩展名是 com.abc.myapp.watchkitapp.watchkitextension
<小时/>

还有什么我可能忽略的吗?

非常感谢您对此提供的任何帮助/见解。

最佳答案

好的。我找到了一种方法来消除该错误,并使 watch 能够从 watch 连接到 iPhone。

最初我希望 watch 应用程序是独立的,因此在 Xcode 的 watch 扩展目标中,选中了“支持在没有安装 iOS 应用程序的情况下运行”复选框。但是,一旦我取消选中此框,WCSession.isCompanionAppInstalled 返回 true 并且错误消失。从 watch 到 iPhone 的同步开始工作。

所以希望这不是有意的行为,并且很快就会被苹果修复。 (我提交了错误报告。)但现在,我将不选中独立的 watchOS 应用程序,因为我确实需要 WatchConnectivity,以防用户安装 iPhone 应用程序。

感谢您的阅读,祝您编程顺利。

关于ios - WatchOS 应用程序未检测到配套的 iOS 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59995597/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com