ios - 为现有的 iPhone 应用程序实现 WatchApp,并希望 api 调用在后台模式下发生在 iPhone 应用程序上

标签 ios iphone watchkit apple-watch watchconnectivity

我正在为现有的 iPhone 应用程序实现 WatchApp,并希望 api 调用在后台模式下发生在 iPhone 应用程序上。请建议如何去做。 我的 iPhone 代码在 Obj-C 中,希望 Watch 代码在 Swift 中。 对于来自 Watch 的网络查询,应在 iPhone 后台处理。 这可能吗?如何实现?

最佳答案

您可以在 watch 应用中调用 WCSession.sendMessage。

当您的 iOS 应用程序可访问时,即使您的应用程序处于后台,也会调用相应的 WCSessionDelegate 回调方法。 (在我的应用程序中运行良好)。

当您的 watch 应用无法访问时,sendMessage 将被丢弃。当您的 iOS 应用程序回答并且无法将答案传输到 watch 时,答案将被丢弃。

附言 正如 Apple 建议的那样,在您的 AppDelegate 中执行 iOS 实现。如果您这样做,您的应用程序可以在不存在 UIViewController 实例时在后台响应。

关于ios - 为现有的 iPhone 应用程序实现 WatchApp,并希望 api 调用在后台模式下发生在 iPhone 应用程序上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33891760/

相关文章:

ios - 单元格中带有 UIWebView 的 UITableView 性能不佳

iphone - UISearchDisplayController "shouldReloadTableForSearchString return NO"重新加载表

iphone - 以编程方式从 iPhone 获取 Sim 识别号/序列号

ios - 如何在 watch 上测试不同的字体大小(动态类型)?

ios - 添加到现有项目时在 Watchkit 模拟器上出现黑屏和 "Waiting to Attach"

ios - 防止屏幕灯关闭 |在 watch 界面禁用 sleep 模式

ios - 从平方根整数中获取所有小数

javascript - 在 ios 中从 Webview 更改字体

iphone - [self.view addSubview :_topViewController. View ];自转问题

ios - 如何设置 moreNavigationController 表的选择颜色?