当我询问 siri 时,我的 Intent UI 扩展不显示

Posted

技术标签:

【中文标题】当我询问 siri 时,我的 Intent UI 扩展不显示【英文标题】:My Intent UI Extension are not displayed when i ask to siri 【发布时间】:2019-08-15 14:06:46 【问题描述】:

我编写了一个带有相应 IntentsUI 扩展的 Siri Intents 扩展。但是siri只说自定义意图响应,IntentsUI不显示。

所有目标 .plistNSExtensionAttributes IntentsSupported 数组中都有我的 CustomIntent。

IntentUI 在我打开锁屏 siri 建议通知时显示,但在我询问 siri 时不显示

我尝试在IntentViewControllerconfigureView() 函数中添加 os.log,但是当我询问 siri 时,控制台中没有显示任何内容

Siri : https://imgur.com/Rva00Bm Siri建议:https://giphy.com/gifs/W3NNEuRIwrpbiAR0tb

func configureView(for parameters: Set<INParameter>, of interaction: INInteraction, interactiveBehavior: INUIInteractiveBehavior, context: INUIHostedViewContext, completion: @escaping (Bool, Set<INParameter>, CGSize) -> Void) 
        guard interaction.intent is GreenGroceryIntent else 
            completion(false, Set(), .zero)
            return
        

        let width = self.extensionContext?.hostedViewMaximumAllowedSize.width ?? 320
        let desiredSize = CGSize(width: width, height: 300)

        completion(true, parameters, desiredSize)


extension IntentViewController: INUIHostedViewSiriProviding 
    var displaysMessage: Bool 
        return true
    

    var displaysMap: Bool 
        return false
    

    var displaysPaymentTransaction: Bool 
        return false
    

显示自定义 UI 的步骤是什么,我可以检查什么以确保我已正确执行此操作?

谢谢。

【问题讨论】:

欢迎来到 SO!为您的问题提供一些代码:您尝试了什么等另见***.com/help/how-to-ask 【参考方案1】:

我有类似的问题。一个月前,我自己开发了一些 siri 快捷方式。我去年 8 月 13 日再次对其进行了测试,但没有成功。具体来说,我的自定义意图不会触发扩展 UI 视图控制器。

我偶然发现了这条推文,并能够证实我怀疑苹果方面存在问题。 https://twitter.com/joehribar/status/1162036267682394112?s=20

他们提到它在 ios 13 中运行良好。但是为 ios 13 开发它很痛苦,因为您必须将操作系统、Xcode 和手机更新到 beta。

我能想到的另一件事是创建一个构建并将其安装在您的 ios 13 手机上,这样您就不必更新您的操作系统和 Xcode。

【讨论】:

感谢您的回答玛丽安,这证实了我的测试。昨天我昨天在 iOS 13 中尝试,UI 显示正确。 Siri 快捷方式 UI 回归 twitter.com/joehribar/status/1162778128122441728

以上是关于当我询问 siri 时,我的 Intent UI 扩展不显示的主要内容,如果未能解决你的问题,请参考以下文章

Siri Intent 请求访问令牌 OAUTH 令牌

在 xcode 中编辑 Intent 方案时,Siri Intent Query 输入字段不可用

如何从 Siri Intent Extension 拨打网络电话?

Siri Shortcuts 的 Intent Extension 在 Sample App 中有效,不在现有项目中

在我让 iPhone 闲置后 Siri Custom Intent 停止工作

SwiftUI:如何从 Siri Intent 添加 CoreData 记录