问题标签 [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.

0 投票
1 回答
1012 浏览

ios - WCSession sendMessage errorHandler 多次调用

我正在使用WatchKit 2.0,并且注意到一个非常奇怪的行为。如果我使用我的手表应用程序超过 5 分钟,我开始从调用中收到超时错误,该WCSession sendMessage调用之前已被调用并成功完成。我将错误打印为:

我仍然可以在不同的地方拨打其他电话Interface Controllers,但我一直errorHandlersInterface Controllers被关闭的电话中(使用顶部的后退按钮)。

有谁知道可能导致这种行为的原因是什么?我没有在代码中结合分层和基于页面的界面样式,并且在使用应用程序的前 5 分钟内一切正常。

更新

这是代码:

最初被调用,但由于replyHandler某种原因在 5 分钟后被errorHandler调用,并且每隔几秒就被调用一次。

0 投票
1 回答
1348 浏览

ios - 如何支持 iOS 9.3 和 watchOS 2.2 的多个手表

无法弄清楚如何为 watchOS 2.2 更新我的手表和 iOS 应用程序以支持多个手表。

我知道有一些新功能必须主要在 iOS 应用程序端实现,但根据开发人员库,还必须在手表扩展上实现:

我不确定该怎么做以及这些函数应该运行什么代码。

0 投票
0 回答
62 浏览

ios - 从 iPhone Click 事件打开 iWatch 应用程序

我在堆栈上进行了搜索,我从 iWatch 应用程序点击事件中找到了唯一的方式 iPhone 应用程序,但是当 iPhone 应用程序事件调用时我没有找到任何打开 iWatch 应用程序的方法。

从 iWatch 到打开 iPhone 应用程序使用了这个代码,它工作正常,

请建议如何从 iPhone 打开 iWatch 应用程序

我还在 2.2 中更新了 iWatch OS,但仍在等待此功能

0 投票
2 回答
2465 浏览

ios - iOS WatchOS2 WatchConnectivity [WCSession defaultSession] activateSession] 失败

我有 XCode 7.3、带有 iOS 9.3 的 iPhone5、带有 WatchOS 2.2 的 Apple Watch

我有一个想要支持 Watch App 的公司项目。首先,我构建了一个空项目,以确保 watchkit 和 watchkit 扩展工作正常,并且确实工作。我可以看到会话已建立并且手表已配对。

但是在我将相同的代码放入公司项目后,它只能工作一次:我第一次直接从 Xcode 运行应用程序。当我从后台杀死应用程序并再次打开它时,应用程序显示没有配对手表。在这种情况下,我得到以下日志:在 iOS 应用程序中

在 watchKit 扩展中

我关于 wcsession 的代码:

iOS 应用程序

在 AppDelegate+GC_WCSession

在 AppDelegate

watchKit 扩展

在 ExtensionDelegate

这是我到目前为止所尝试的:

  • 重置所有模拟器的内容和设置

  • 从手表和 iPhone 中删除了手表应用

  • 通过手机手表应用程序中的设置:删除手机应用程序的手表扩展并重新安装

  • 尝试在 AppDelegate INIT 方法中设置 iPhone WCSession

我不认为代码有问题,因为它在一个空项目中工作。我想知道环境配置是否有问题。我现在在这个问题上挣扎了很多天。因此,每一个提示都受到高度赞赏。

0 投票
0 回答
567 浏览

ios - iPhone上的Apple Watch核心运动数据?

因此,WatchOS 2 支持核心运动框架并允许活动的 WatchKit 应用程序访问来自 Apple Watch 加速度计的数据。我想访问该数据,但在 iPhone 上。除了在手表上打开一个应用程序来收集数据并通过 Watch Connectivity 将其传输回手机之外,还有其他方法可以做到这一点。

在 Healthkit 中,手表收集的所有数据都会同步回手机,这意味着我的 iPhone 应用程序可以通过 HKSampleQuery 直接获取数据。我想知道 Healthkit 中的“Active Energy”记录是否只是来自手表的核心运动加速度计数据的集合,但我不确定。

我曾考虑使用手表连接和 SendMessage 从 iPhone 唤醒手表并获取数据,但我读过这是不可能的。我可以从手表中唤醒 iphone,但反过来不行。

我看过 WWDC 2015 视频,包括“核心运动中的最新消息”。它表明您可以在手表上获取核心运动数据,但在 iPhone 上获取手表核心运动数据却一无所获。

有什么建议么?谢谢

0 投票
1 回答
1675 浏览

ios - sendMessage 的问题 - WatchConnectivity

我一直在为 WCSession 使用 NatashaTheRobot 单例,但无法让 sendMessage 正常工作。

我的目标是从 Watch 应用程序向 iOS 应用程序发送消息,并将字典从 iOS 应用程序传输到手表应用程序。

这是我在ExtensionDelegate中的代码

这是我在 iOS 应用程序的WCSingleton中的代码(与 AppDelegate 分开)

这是我在ViewController中使用的方法(从 触发NSNotificationCenter)。然而,这部分代码永远不会被执行(这很奇怪,因为当我使用 applicationContext 时它工作得很好)。

任何关于如何让所有这些部分协同工作的见解都非常受欢迎!

0 投票
1 回答
354 浏览

path - 在 WatchKit OS2 中播放音频文件

从手机发送 MP3:

我如何尝试在手表上接收和播放文件:

这是文件的 URL:

file:///var/mobile/Containers/Data/PluginKitPlugin/-------/Documents/Inbox/com.apple.watchconnectivity/------/Files/----/MyMusic.mp3

这是错误:

播放出错:Error Domain=com.apple.watchkit.errors Code=4“在此服务器上找不到请求的 URL。” UserInfo={NSUnderlyingError=0x16d4fa10 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}, NSLocalizedDescription=在此服务器上找不到请求的 URL。}。

如何在 watchOS 2 中播放此文件?

0 投票
1 回答
743 浏览

ios - 使用 Watch 连接框架将数据从 iPhone 传输到 iWatch

我想问一个关于手表连接的问题。

1) iWatch 应用程序打开时是否可以从 iPhone 读取数据。我不想等待打开 iPhone 应用程序将数据传输到 iWatch。

2) 是否可以在 iWatch 上创建登录屏幕(从文本字段获取用户输入)

3) iWatch 有设备令牌和供应商 ID?如何从 iWatch 获取这些信息?

4) 是否可以从 iWatch 应用程序读取 iPhone 应用程序的数据库(如 iPhone 应用程序上的 sql lite db)

5) 如何将字典从 iPhone 应用程序传输到 iWatch 应用程序。请分享任何示例。

0 投票
1 回答
537 浏览

ios - 关闭辅助视图控制器后,如何继续从 Apple Watch 接收消息/数据

我正在编写一个应用程序,它允许我记录我的高尔夫击球并保存它们,以便我可以在 iPhone 上查看分数。问题是,虽然应用程序在启动和打开辅助视图控制器后确实收到了消息,但它在关闭任何辅助视图控制器后停止侦听消息。如果我然后切换到辅助视图控制器,它将监听消息,直到我再次关闭它。我不知道为什么根视图控制器只会在打开辅助视图控制器之前进行监听。

我正在使用sendMessage及其相应的接收器功能在设备之间传输斯托克斯数。每个视图控制器都包含接收消息功能。

有问题的代码如下:

发送消息功能是...

并且接收消息功能是......

对于所有 18 个孔,常量和 if 语句继续。

我正在使用以下内容来关闭辅助视图控制器。

0 投票
0 回答
622 浏览

ios - WatchConnectivity transferFile 方法不起作用

我正在尝试传输从 facebook 下载的图像,但由于某种原因,我的 transferFile 方法已停止工作。相同的代码似乎在一小时前可以工作,但我找不到我所做的更改以使其停止工作。

我没有从委托方法中得到错误,也没有在手表端调用我的日志。

这是我下载图像和传输的方式。

ViewController.swift

手表

有什么想法吗?我没有错误记录以处理任何事情。