- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我想编写一个可以与多个 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/
我有兴趣了解有关 Microsoft Office Communicator 的更多信息IM 客户端,以及它如何确定您的存在(即您是在计算机旁还是不在)。任何人都可以向我指出解释这一点的教程或 API
我正在使用 python。我正在尝试运行一个进程并使用 subprocess.popen 获取输出。阅读周围后,我看到人们使用 communicate()[0] 但那不在文档中,它用于示例。我想知道是
我正在使用 python。我正在尝试运行一个进程并使用 subprocess.popen 获取输出。阅读周围后,我看到人们使用 communicate()[0] 但那不在文档中,它用于示例。我想知道是
我有一些设置和拆卸脚本,它们使用 csrun.exe 为一些自动化测试准备本地计算模拟器。 C:\Program Files\Microsoft SDKs\Azure\Emulator\csrun.e
我想知道对这句名言最接地气的解释是什么: Don't communicate by sharing memory; share memory by communicating. (R. Pike) 在
(所以 this question has been asked before ,但在一般意义上,大多数响应都是在与多个服务器/客户端/等的一般网络通信的上下文中) 在简单的点对点通信协议(proto
我正在尽力将 C++ 模块链接到 python 绑定(bind)。我正在努力实现 boost mpi 通信。我正在将 boost.mpi.world 对象发送到 C++,它需要一个 boost::mp
情况是这样的: 我有一个正在运行的命令: import subprocess foo = subprocess.Popen('ls /', shell=True, stdout=subprocess.
关闭。这个问题是opinion-based .它目前不接受答案。 想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题. 7年前关闭。 Improve t
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题? Update the question所以它是on-topic对于堆栈溢出。 10年前关闭。 Improve this qu
关闭。这个问题是opinion-based .它目前不接受答案。 想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题. 2年前关闭。 Improve t
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎与 help center 中定义的范围内的编程无关。 . 关闭 5 年前。 Improve
我曾与那些与同龄人在线聊天的人一起工作,他们不断地围绕想法进行讨论。我也曾与那些坚决拒绝并认为这是浪费时间的人一起工作。 在线实时聊天论坛对您特别有用吗?为什么或者为什么不? 在您的公司内部,还是在外
我在一个分为两组的 IT 部门工作。一组开发和管理应用程序,另一组管理公司的基础设施和服务器。我们面临的问题之一是沟通中断。我为应用程序组工作,我遇到的问题之一是当基础设施关闭服务器或刷新数据库时没有
我的团队与 IM 进行了很多交流。我们有时甚至会使用 IM 向在下一个立方体中的人提问。这样做的原因是我们都发现接听 IM 的干扰比说话要少得多。 尽管如此,我发现当我低头编码时,闪烁的消息窗口可能会
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 4年前关闭。 Improve thi
关闭。这个问题是opinion-based .它目前不接受答案。 想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题. 3年前关闭。 Improve t
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题? Update the question所以它是on-topic对于堆栈溢出。 10年前关闭。 Improve this qu
传输数据时,汉明码显然允许您重新创建已通过线路损坏的数据(纠错码)。 这是如何工作的,它的局限性是什么(如果有的话)? 有没有更好的纠错解决方案(相对于重传)?是否存在重传更好的情况? 最佳答案 让我
我是一名优秀的程序员,十分优秀!