在WatchOS上替代application:handleIntent:completionHandler:

时间:2018-10-08 14:18:47

标签: ios watchkit apple-watch watch-os sirikit

iOS的[application:handleIntent:completionHandler:]允许在iOS目标上的AppDelegate类内部处理SiriKit意图。

我想知道在WatchOS目标上是否也有这种方法的替代方法?我需要的是类似的功能,该功能可处理WatchOS上的SiriKit请求并响应 INIntentResponse 类型的结果来响应WatchOS意图扩展-与在iOS上的工作方式相同。

谢谢!

1 个答案:

答案 0 :(得分:1)

事实证明,这种方法存在于WatchOS 5.0+的WKExtensionDelegate中:handleIntent:completionHandler:

这里是一个例子:

func handle(_ intent: INIntent, completionHandler: @escaping (INIntentResponse) -> Void) {
    let result = INStartWorkoutIntentResponse(code: .ready, userActivity: nil)

    completionHandler(result)
}