gpt4 book ai didi

ios - 从 SiriKit 中的 INExtension 启动应用程序

转载 作者:可可西里 更新时间:2023-11-01 04:50:19 25 4
gpt4 key购买 nike

我想使用 SiriKit 开始锻炼。开始锻炼需要从应用扩展打开主应用。

Apple 为 INStartWorkoutIntentHandling 处理程序提供的样板是

func handle(startWorkout startWorkoutIntent: INStartWorkoutIntent, completion: (INStartWorkoutIntentResponse) -> Void) {
let userActivity = NSUserActivity(activityType: NSStringFromClass(INStartWorkoutIntent))
let response = INStartWorkoutIntentResponse(code: .success, userActivity: userActivity)
completion(response)
}

如何从这里打开我自己的应用程序?类似于 myapp://workout?action=start&name=pushups This answer似乎不相关,因为我没有带有此扩展类型的 extensionContext 属性的 UIViewController

最后一点:对于其他操作(暂停、结束),我宁愿不打开主应用程序,而是简单地暂停主应用程序中运行的锻炼。我可以使用类似的自定义 URL 来暂停它,但这会打开应用程序,这是一个额外的不必要步骤。有什么好方法可以告诉主应用在不打开应用的情况下从 INExtension 执行特定操作?

最佳答案

对于后代:事实证明这是 Xcode 8 beta 之间此功能的逐步引入,它已在 Xcode 8 beta 3 中得到解决。他们将 .continueInApp 代码添加到 INStartWorkoutIntentResponseCode 在此版本中,但在 Xcode 8 beta 2 中不存在。此状态代码允许直接传递 NSUserActivity(无需使用 URL 方案)。

关于ios - 从 SiriKit 中的 INExtension 启动应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38537721/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com