调用openParentApplication:需要什么样的iOS背景

时间:2015-07-07 01:13:40

标签: ios apple-watch

根据文档,当Apple Watch扩展程序使openParentApplication:reply:调用与包含的iOS应用程序通信时,如果包含的应用程序尚未运行,则手机会在后台启动包含应用程序,并传递app:handleWatchKitExtensionRequest:userInfo:对app delegate的回复调用。

对于Apple Watch的发布版本,这有用吗?我发现帖子说这个功能在测试版中有一个错误,但没有关于它的每个工作正常的详细信息。

假设该错误已不复存在,iOS应用程序是否需要为此设置背景模式?如果是这样,应该选择什么样的能力? Apple自己的Lister示例没有这个设置。

目前,对于我的项目,如果我的手表应用程序正在运行,并且iOS应用程序没有运行,则发出此调用不起作用,并且该呼叫最终会超时。我知道电话必须很快,但速度有多快。如果在应用Watch之前iOS应用程序正在运行,它通常会起作用。

我的手表应用程序要求手机提供一些文字信息,手机会从核心数据中检索此信息,并回复手表。我以为会有足够的时间。

任何提示或帮助?

Steve Sheets

1 个答案:

答案 0 :(得分:0)

openParentApplication并不需要启用后台模式才能运行。您是否正在执行后台任务中的所有操作,如Apple的WatchKit tips中所述?

如果您不使用后台任务请求额外时间,操作系统几乎会立即终止您的应用。这就是为什么您只在应用程序处于活动状态时才能看到它的原因。

您可以使用beginBackgroundTaskWithExpirationHandler提供的UIApplication方法启动后台任务。 docs可以提供一些其他详细信息。