我们可以在IOS模拟器中测试SIRIKit扩展:

时间:2016-11-21 06:13:52

标签: ios ios-simulator siri

我正在尝试使用sirikit开发应用扩展程序,但是当我尝试在模拟器iphone 7plus上运行它时,它会出现以下错误: -

SpringBoard无法为请求提供服务。

有人可以告诉我IOS Simulator是否支持SIRIKit扩展!

6 个答案:

答案 0 :(得分:15)

修改

对于Xcode 8.3或更高版本,您可以在模拟器中使用Siri。步骤是 -

1)从模拟器的设置启用Siri。

2)从硬件中选择Siri

以下是一些供参考的图片 -

第1步 -

enter image description here

第2步 -

enter image description here

第3步 -

enter image description here

第4步 -

enter image description here

过时的答案

不,你不能在模拟器中做到这一点

检查

  

在设备上运行和调试Intents扩展选择构建   Intents扩展的方案。添加Intents扩展时   对于您的项目,Xcode会自动为其创建构建方案   运行该扩展。配置方案以在附加上运行   设备。 您无法在模拟器中调试Intents扩展程序。   选择产品>运行以在设备上启动扩展程序。什么时候   由Xcode提示,选择Siri(或地图)作为要运行的应用程序。 Xcode中   构建您的应用和扩展程序,将它们安装在设备上,以及   启动您选择的应用程序。

参考 - here

答案 1 :(得分:5)

是更新您的XCode版本:8.3.1及更高版本支持模拟器中的SIRI。

第1步:

enter image description here

<强> STEP-2 从模拟器中的设置启用SIRI

<强> STEP-3 硬件---&GT; SIRI

enter image description here

答案 2 :(得分:5)

在Xcode 9中,您可以通过UI测试来测试Siri任务。他们在this WWDC会议结束时谈论它。 基本上它看起来有点像这样:

    let siri = XCUIDevice.shared.siriService
    siri.activate(voiceRecognitionText: "How many points are on my credit card?")
    let predicate = NSPredicate {(_, _) -> Bool in
        sleep(5)
        return true
    }

    let siriResponse = expectation(for: predicate, evaluatedWith: siri, handler: nil)
    self.wait(for: [siriResponse], timeout: 10)

答案 3 :(得分:3)

Apple docs说:

  

您无法在模拟器中调试Intents扩展。

提示:阅读文档。

答案 4 :(得分:2)

现在您可以在Xcode 8.3.1中使用

[以前的答案]

根据Apple Docs

不,你不能

答案 5 :(得分:0)

从Xcode 8.3开始,您可以使用硬件&gt;调用Siri。 Siri在模拟器上的设置应用程序中启用Siri后。