问题标签 [handoff]

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 投票
3 回答
4962 浏览

ios - NSUserActivity 切换不适用于自定义数据

我正在尝试在我的 iPhone 和 iPad 之间使用 NSUserActivity 测试 iOS 8.1 的切换功能。为此,我尝试实施自己的解决方案,并使用 Apple 的PhotoHandoff项目。但是,它不起作用。

如果我提供 a webpageURL,则移交工作正常,但是当我尝试使用userDataaddUserInfoEntriesFromDictionary没有任何工作时,我终生无法弄清楚使数据工作的关键是什么。

示例代码:

(我也无法使其与具有相应活动类型的 Mac 应用程序一起使用)

0 投票
1 回答
238 浏览

ios - 我需要 mac 开发人员程序来启用切换吗?

我是否需要一个 mac 开发人员程序来启用 osx 应用程序和 ios 应用程序之间的切换?我都做过,但是从 ios 到 osx 的工作没有问题,相反的方式似乎不起作用(iOS 设备看不到 mac)。

使用两台 iOS 设备,我的代码运行正常。

我已经填写了 NSUserActivity 类型。mac 应用程序,在“常规”设置中具有“无签名”,在构建设置中,代码签名身份设置为我的 iOS 开发证书(因为我没有 Mac 证书)。我需要 mac 证书才能运行从 mac 到 ios 的切换吗?

谢谢

0 投票
1 回答
3621 浏览

ios - 使用 Handoff 和 Watchkit 将 iPhone 应用程序带到前台

我有一个简单的项目,用户点击 Apple Watch 上的按钮并在 iPhone 上播放一些音频,这很容易使用 openParentApplication 方法和 AppDelegate 中的 handleWatchKitExtensionRequest 代码。但是,虽然这在模拟器中有效,但如果 iPhone 应用程序尚未打开,它将无法在实际设备上运行。我正在尝试查找是否可以使用其他方法,即使 iPhone 应用程序尚未打开也可以使用。

我在这里阅读了stackoverflow的答案,可以使用Handoff(部分)将电话应用程序带到前台,使用WKInterfaceController updateUserActivity:userInfo:webpageURL:and UIApplicationDelegate application:continueUserActivity:restorationHandler。但是,作为一名新开发人员,我正在努力弄清楚如何在没有任何示例的情况下正确执行此操作。任何人都可以提供一些示例代码来说明这将如何工作,它们一起用于在 iphone 应用程序上运行一些代码?

0 投票
0 回答
419 浏览

swift - 斯威夫特:如何以最简单的方式使用切换?

当用户在 watchkit 应用程序中执行某些操作时,我正在尝试使用切换来使 iphone 应用程序执行某些操作。在手表应用程序中(在 InterfaceController.swift 中),当用户点击一个按钮时,我会运行以下代码:

然后在手机应用程序的 AppDelegate.swift 文件中,我有以下代码:

从理论上讲,这应该将 userInfo (在本例中为 ["one":"two"])打印到控制台,但我认为我在这里遗漏了一些东西。

0 投票
1 回答
407 浏览

ios - 如何格式化网页 URL 以让 WatchKit 将用户切换到 Safari 中的网站?

我有一个在 WatchKit 应用程序中生成少量信息的应用程序。然后,我想将用户转到另一台设备上的 Safari,以便在网站上获取更多信息,并在 url 查询字符串中提供特定信息。我写了这个:

当我println(website)出现时nil,控制台警告说两者userInfowebpageURL不能nil。我尝试了多种不同的方式将该 URL 格式化为字符串,但似乎没有任何效果。

Swift 文档很好,但缺少示例。那里的大多数示例都不会打扰该webpageURL元素。

更糟糕的是,即使我得到它不会生成错误消息,我也不确定它是否有效,因为webpageURLIOS 模拟器不支持它。有没有人有一些工作代码,最好在实际手表上测试,他们可以分享?

0 投票
1 回答
821 浏览

javascript - 如何从 Watchkit 传递 NSURL - > Native Cordova 应用程序并使用 Javascript 打开浏览器

我有一个工作的科尔多瓦应用程序并构建了一个 Watchkit 应用程序。意识到我不能将本机应用程序调用到前台或对其内部工作做任何事情,我想使用 Handoff 来简单地通过 Safari 将用户发送到一个网页,该网页基本上可以从应用程序中获取代码并处理 URL查询字符串参数。所以我写了一个例程,它基本上是这样做的:

现在,我无法测试,因为我没有手表而且模拟器不支持 Handoff。但我怀疑这是否可行:我已经在本机应用程序的根 info.plist 中手动插入了一个 NSUserActivityTypes 数组和“hellobrowser”活动,但这是严重未记录的领域,虽然一切都可以编译和运行,但我不知道如果它真的触发了切换,直到我可以在实际手表上运行它。墨菲定律说它会失败。

执行此操作的另一种方法是以某种方式将 NSURL 传递回 Cordova 并使用

为此,我使用了这个 Cordova -Watchkit 插件,它允许在 Watchkit 扩展和 cordova 应用程序中的 javascript 之间传递 JSON 对象。所以在本机应用程序端,我将实现这个消息传递示例的一个版本来传递字符串化的 NSURL(除了这个示例是 iPhone -> iPhone 而不是 Watchkit -> iPhone):

但是,我在传递 JSON 对象方面是个菜鸟,并且没有示例说明 Watchkit 应用程序或扩展中的 Swift 代码可能会将 NSURL 传递回该侦听器。

我怀疑有一个更简单的方法来做到这一点!如果我可以从 Watchkit 应用程序中将 NSURL 作为字符串获取到我的本机应用程序的 javascript 中,那么我就很成功了。

0 投票
1 回答
479 浏览

ios - 了解 Apple Watch 和 iPhone 设备之间的交互

我有点困惑,因为当我在模拟器上运行 Apple Watch 扩展应用程序架构时,我只看到 Apple Watch 应用程序被吃掉了。但是,我不确定一旦我们拿到 Apple Watch ,真正的硬件会发生什么。

我想了解以下内容:

  1. 在 Apple Watch 上启动 App 之前,是否需要在手机上启动相应的 iPhone App?
  2. 如果 1 的答案是否定的,我可以从 Apple Watch 上的应用程序启动 iPhone 应用程序吗?如果 2 的答案是肯定的,那么我如何以不在后台的方式启动 iPhone 应用程序?(我发现 handleWatchKitExtensionRequest 可以触发后台任务,但我还没有找到任何文档 - 我还找到了Handoff Api,它允许您在设备上恢复任务,但我不喜欢它需要 iCloud 帐户,我我不确定如何在不强制用户采用 iCloud 的情况下构建应用程序/手表交互)。
  3. 鉴于 Apple Watch 应用程序扩展驻留在 iPhone 应用程序包中,这是否意味着当您启动 Apple Watch 应用程序时,它需要与 iPhone 设备建立连接和接近度?我假设会有一个蓝牙连接,并且如果用户及其手表远离 Iphone,将无法启动某些应用程序(范围是多少?)

非常感谢

0 投票
1 回答
875 浏览

ios - 使用 NSUserActivity 从 Handoff 中 userInfo 为空

我正在尝试从我的 WatchKit 应用程序发送一个字符串:我可以通过锁定屏幕启动应用程序,但是当continueUserActivity调用该方法时,userActivity.userInfo不包含任何值,我在这里遗漏了什么吗?

- 我得到的唯一价值是activityType

手表:

电话:

0 投票
2 回答
308 浏览

ios - 如何在 Watch OS 1.0.1 上的 WatchKit 应用中实现每页切换?

Watch OS 1.0.1改变了基于页面的应用程序的生命周期:现在willActivate/didActivate被调用以预加载下一页。

我之前调用updateUserActivity:userInfo:webpageURL:了我的每个页面的willActivate方法,userInfo为每个页面提供不同的方法。但是现在,userInfo下一页对willActivate.

知道如何解决这个问题吗?

0 投票
1 回答
165 浏览

ios - WatchKit:从 Long Look 的静态界面切换?

我们的应用程序已经实现了 Apple Watch(在我们的WKUserNotificationInterfaceController子类中)上的推送通知和主 iPhone 应用程序之间的切换功能。它适用于通知长外观的动态界面。

但是,当我从 Apple Watch 的通知中心打开通知时(从而导致静态长外观),切换不适用于 iPhone。iPhone 锁定屏幕上根本不显示切换图标。

我还注意到,切换确实可以从静态的长外观中工作:

  • 没有自定义长外观实现的应用程序(通知中心带有圆形图标的应用程序)
  • Watch 上的消息应用程序,也许还有来自 Apple 的更多应用程序

有人也注意到这个问题吗?是否有任何变通方法可以使切换工作从静态的长外观开始?