gpt4 book ai didi

ios - 苹果 watch : Can one Watchkit App communicate with more than one iOS App?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:42:26 26 4
gpt4 key购买 nike

我想编写一个可以与多个 iPhone 应用程序通信的 Watchkit 应用程序。

例如,我们将此 Watchkit 应用程序称为“PingPong”。它所做的只是设置一个观察者,并响应一个请求——类似于 ICMP ping 请求。因此,当应用向 watch 发送“PING”时,PingPong Watchkit 应用会以“PONG”响应。

如何让多个应用程序访问此功能?换句话说,我想公开这个非常简单的接口(interface),以便不同的应用程序可以使用它。

请注意,文档指出,“您必须有一个现有的 iOS 应用程序才能创建 WatchKit 应用程序。WatchKit 应用程序作为 Xcode 项目的单独目标实现,并在您的 iOS 应用程序的 bundle 中构建和打包...... Xcode为您的 WatchKit 应用程序和 WatchKit 扩展配置目标,并将所需的文件添加到您的 iOS 项目。两个新目标的包 ID 是根据您的 iOS 应用程序的包 ID 自动配置的。所有三个包的基本 ID 必须匹配;如果您更改 iOS 应用程序的 bundle ID,则必须相应地更新其他 bundle ID。” https://developer.apple.com/library/ios/documentation/General/Conceptual/WatchKitProgrammingGuide/ConfiguringYourXcodeProject.html#//apple_ref/doc/uid/TP40014969-CH2-SW1

这意味着 iOS 扩展应用程序和 watchkit 应用程序之间存在一对一的关系。含义? Watchkit 应用程序本质上是沙盒化的,这是不可能的。但是问也没什么坏处。这就是 SO 的用途,对吧? :P

谢谢,基思 :)

最佳答案

事实上,watchOS 应用程序链接到 iOS 配套应用程序。

在这两个版本中,每个 watchOS 应用程序都有两个目标:WatchKit 应用程序(包含 Storyboard、图标等)和 WatchKit 扩展程序(包含代码)。

在 watchOS 1(旧版 WatchKit)+ iOS 8 组合中,WatchKit App 安装在 Apple Watch 上,WatchKit Extension 和 iOS 应用程序都安装在用户的 iPhone 上。

换句话说,在 watchOS 2 + iOS 9 组合中,WatchKit App 和 WatchKit Extension 都安装在用户的 Apple Watch 上,而 iOS App 是唯一安装在 iPhone 上的代码和 View 。

运行 iOS 应用程序只需要一个目标,因此它可以在没有 Apple Watch 的情况下运行(自第一个 iPhone OS 以来)。

但是运行 watchOS 应用程序需要 WatchKit App 和 WatchKit Extension。在 watchOS 1(旧的 WatchKit)中,因为一个在 iPhone 上,另一个在 Apple Watch 上,所以运行的应用程序需要通过蓝牙在它们之间连接,所以你必须随身携带你的 iPhone。在 watchOS 2 中,两者都在 Apple Watch 上,因此运行应用程序不需要连接到 iPhone,也不需要将 iPhone 放在身边。您可以使用 watchOS 2 SDK(在 Xcode 7 中)中包含的 WatchConnectivity 框架连接它们。

因此在 watchOS 2 中,应用程序可以独立运行,但它们根本就不是独立的。它们安装在 iPhone 上时安装在 Apple Watch 上,并且它们可以相互连接。当您创建新的 watchOS 应用程序时,您必须在将其提交到 iTunes Connect 时将其包含在您的 iPhone 应用程序中。

注意:这使得 watchOS 应用程序更快、更可靠。

因此在这两个版本中,每个 WatchKit 应用都与一个扩展和一个 iOS 应用相关联,因此您不能将一个 watchOS 应用链接到多个 iPhone 应用,或者将一个 iOS 应用链接到多个 WatchKit 目标。 (异常(exception)情况是为 watchOS 1(旧 WatchKit)和 watchOS 2(它们都是一个应用程序,但在 watch 操作系统的两个不同版本中)制定两个目标。

总而言之,您不能将多个 watchOS 应用程序或多个 iOS 应用程序链接在一起。这是 watchOS 1 和 2 中的事实,将来可能会更改。

关于ios - 苹果 watch : Can one Watchkit App communicate with more than one iOS App?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31058805/

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