问题标签 [watchconnectivity]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 通过 sendMessage 发送一个巨大的字典 - WatchKit
我的目标是从 iOS 应用程序向 watchKit 应用程序发送一个巨大的字典(包含大约 10 个数组),但我在 watchKit 端没有得到任何输出。
如果我发送一个字符串,以下示例可以正常工作:
但是当我尝试发送字典时,我根本没有得到任何输出:
这就是我在 watchKit 端打印输出的方式:
ios - 与iOS应用共享应用时watchOS应用独立运行
我的 iOS 应用程序使用 CoreData 作为其数据存储,并且我添加了一个 watchOS 应用程序来配合它。目前 iOS 和 watchOS 应用之间的工作流程如下:
- watchOS 应用程序公开了一个菜单,该菜单表示 iOS 应用程序中可用的功能子集
- 选择其中一个选项会向 iOS 应用程序发送一条消息,告诉它选择了哪个选项
- iOS 应用程序通过将手表为该特定功能所需的任何数据打包到字典中并在回复处理程序中将其发送回手表来做出响应
- watchOS 应用程序向用户提供了一个界面,允许他们更改数据中的值
- 每次更改都会向 iOS 应用程序发送一条消息,该应用程序使用新值更新核心数据存储
这工作正常,但显然需要在使用应用程序的整个过程中将手机连接到手表才能工作。我想知道是否可以使用以下模型:
- 如上
- 如上
- 如上3a。手表将数据存储在本地
- 如上
- 每次更改都会更新手表应用的本地数据副本
- 用户可以稍后将数据检入到 iOS 应用程序中,然后将其合并到核心数据数据库中
我可以保证冲突不会成为问题,因为用户永远无法修改已经在手机上创建的数据(应用程序不需要这样做)。
所以我的问题是,后一种情况是否允许 watchOS 应用程序独立于 iOS 应用程序运行,但传输数据除外,这是否比我目前处理的方式更可取?
swift - 结合 WatchConnectivity 和并发症
我希望我的复杂功能通过 Watch Connectivity 从 iPhone 获取数据。我正在使用sendMessage
即时通讯技术。
当我尝试获取数据时,我不希望我的 iPhone 应用程序打开,因此这需要在后台运行。
在我 iPhone 上的 ViewController 中:
在我的 ComplicationController
我在手表上唯一能看到的是“不是”。为什么并发症不显示接收到的数据?
synchronization - WatchOS 没有在从 iPhone 到 Watch 的 didReceiveUserInfo 中获得回调
首先让我明确一点,一切都运行良好。但是从最近两天开始,我面临着非常奇怪的情况,我可以将用户信息从 WatchOS 发送到 iOS,但没有发生反向操作。
即使我在任何地方都没有收到任何错误。我尝试重新启动,重新安装和修复,但仍然存在同样的问题。有没有人有想法处理这个?
swift - iOS 和对应的 Complication 无法相互通信
我的应用程序的基本概念是,Complication 向 iPhone 请求数据,然后 iPhone 将数据发回。我从我的 iPhone 应用程序中激活了我的 WCSession didFinishLaunchingWithOptions
。同样在我的 Watch 应用程序中,我已经覆盖init()
了 ExtensionDelegate 中的。
这是我在 iPhone 上的单身人士:
这是我手表上的单身人士:
在我的 ExtensionDelegate 的 init 中,当我激活我的 Complication 时应该调用它,我调用startSession
和requestData
:
还有我 iPhone 上的 AppDelegate:
输出很简单:
没有didReceiveUserInfo
当我在 XCode 中的模拟器上调试复杂功能时。
ios - 观看连接会话问题
我正在尝试从手表扩展向手机发送消息以更新并发症。
AppDelegate.swift
ExtensionDelegate.swift
但是当我运行手表模拟器(并且手机应用程序未打开)时,我收到
错误域 = WCErrorDomain 代码 = 7007 “配对设备上的 WatchConnectivity 会话不可访问。”
这也出现在实体手机和手表上。
这可能是什么原因造成的?
更新
这只发生在我从分机拨打电话时。手表应用程序可以很好地发送和接收消息。此外,它在从 applicationDidFinishLaunching() 调用时有效,但在扩展委托中没有任何其他内容。
更新
我修复了以前的,现在得到
WatchConnectivity 会话没有委托。
ios - WatchKit - 无法在后台传输文件“未安装手表应用程序”
我正在尝试使用 WCSession 方法 transferFile 在后台传输图像文件。
我正在从 PHPhotoLibrary 中提取照片(本地照片)。然后将它们存储在缓存目录中以通过传输发送。图像已成功写入并保存到该位置。
手表的一面:
但是,我不断从 didFinishFileTransfer 收到此错误...
我已经尝试了一切。重新安装应用程序,重建项目。重新打开 Xcode。重新连接我的手表.... 我将尝试重新启动我的计算机。
任何想法为什么我会收到此错误?
ios - 如何将自定义相机从 iOS 应用程序流式传输到 watchOS 应用程序?
我已经在网上搜索了高低以找到解决方案。WatchOS 能够使用 iPhone 上的库存相机应用程序并几乎实时地流式传输到库存的 watchOS 相机应用程序。这怎么可能,因为我有一个相机应用程序需要在我的 watchOS 应用程序上显示相机视图。
据我所知,WatchConnectivity.framework
它的速度还不够快,无法像普通的 watchOS 相机应用程序那样模拟实时图像流。(我真的怀疑他们是否在多张图像中截屏并WKInterfaceImage
在手表上显示为相机图层。)有人有什么建议吗?苹果是否使用他们自己的私有 API 将库存的 iOS 相机流式传输到 watchOS?我很惊讶没有人深入研究这个功能。
我也觉得令人沮丧的是,Apple 允许他们的手表应用程序打开他们的 iOS 主机应用程序,但不允许我们开发人员这样做。(但这是针对不同的论点。:()
提前感谢您的回复/建议。任何事情都有帮助。
ios9 - iPhone 和 watch 应用程序都启动了吗?
我创建了一个配套的 Apple Watch 应用程序,并希望在手机和手表之间同步数据。
有没有办法让两个应用程序同时加载?如果我打开 iPhone 应用程序,手表应用程序不会打开,反之亦然。
ios - 打开 WatchOS2 时获取更新的应用程序上下文
所以我浏览了很多关于 WatchOS2 的教程。
我可以从 iPhone 模拟器和 iWatch 模拟器中增加、减少计数器(标签值)(当两者都处于活动状态时)。
当 iOS 应用程序处于非活动状态(终止)时,watchOS2 应用程序处于活动状态,在 watchOS2 应用程序中更改值,然后打开 iOS 应用程序,计数器标签正在更改。
但反过来是行不通的。在 watchOS2 应用程序处于非活动状态(终止)时更改 iOS 应用程序中的标签计数器。然后打开 watchOS2 应用程序,但该值未更改或与 iOS 应用程序不同。
对于更改值,我使用了这种方法
我使用了本教程,根据本教程[session updateApplicationContext:dic error:&error];
是一种更新或更改整个上下文的方法。因此,当 watchOS2 应用程序处于活动状态时,它不应该获取在 watchOS2 应用程序终止时由 iOS 应用程序更新的最新上下文。
请建议我必须做什么。我没有找到一个解决方案或找到所有教程,并没有解决这个问题。