我想深入研究快捷方式技术。所以这里有一些问题:Siri快捷方式可以在任何类型的应用程序中使用吗?因为SiriKit只在旅游、聊天等方面起作用。现在使用快捷方式。我可以通过Siri跳转到显示特定页面的应用吗? 最佳答案 CanSirishortcutsbeusedinanytypeofapp?BecauseofSiriKitonlyworkingintourism,chattingetc.是的,任何一个。它们不绑定(bind)到任何特定域。它们是定制的。Nowusingshortcuts.CanIjumptomyappshowings
在我的应用程序中,我希望能够告诉Siri类似以下内容:所以我启用了Siri功能,添加了一个目标,实现了INStartWorkoutIntentHandling(以及其他)委托(delegate)方法,一切正常。我现在可以说StartaworkoutwithMyAppName。完美!现在我想告诉她类似StartanactivityusingMyAppName,甚至StartahikeusingMyAppName。所以我去添加了一个AppIntentVocabulary.plist看起来像这样:那里有快速问题......词汇项目标识符......如果工作-Hikef.e.应该用于开始、结束
我必须使用Siri通过我的应用发起voip调用。它在演示项目中工作,但是当我将IntentsExtension添加到我现有的项目中时,Siri不再工作了。在系统设置中,我的应用程序未显示在“应用程序支持”部分。Plist配置如下:另见扩展的plist配置:每当我发出任何语音命令时,它都会说“我希望我可以,但是还没有给我设置好。”我还尝试通过功能启用Siri。让我知道我在那里做错了什么。谢谢。 最佳答案 我终于找到了根本原因,每当我添加IntentExtension时,默认部署目标都设置为10.2(Xcode8.2)。当我在iOS10
我正在使用SiriKit开发一个简单的照片搜索。我可以在主视图Controller上搜索和显示图像,但无法使用IntentsUI框架在IntentsUI上显示图像。我跟着这个tutorial但它缺少IntentsUI实现。这是我到目前为止所做的。IntentHandler.swiftclassIntentHandler:INExtension,INSearchForPhotosIntentHandling{overridefunchandler(forintent:INIntent)->Any{returnself}//MARK:-INSearchForPhotosIntentHand
在我的应用程序中,我需要使用用户的电话号码(而不是用户的联系人姓名)发送付款。因此,如果联系人中的用户有2个电话号码,则用户必须选择其中一个号码(如电话调用意图)。在函数funcresolvePayee(forSendPaymentintent:INSendPaymentIntent,withcompletion:@escaping(INPersonResolutionResult)->Void)中,我只看到用户的姓名,但没有电话号码。甚至intent.payee.personHandle总是==nil 最佳答案 我使用了这个解
你真的可以在Siri扩展中访问联系人数据库吗?我正在尝试制作一个INSendPaymentIntent扩展,用户可以在其中指定他要向其汇款的人。这在模拟器(Xcode8.3.2,iOS10.3)上工作得很好,但是当我在设备上运行相同的代码时,Siri立即停止工作并告诉“抱歉,你需要在应用程序中继续”。我得到的唯一控制台输出是“程序以退出代码结束:0”。据我所知,在我尝试实例化CNContactStore()后,Siri停止工作。有没有人在Siri扩展程序中成功获得对真实设备上联系人存储的访问权限? 最佳答案 事实证明问题不在于CNC
我正在尝试提高与Siri集成的支付应用程序的安全性。我使用了此link中的Apple示例代码,我调整了以下内容以在执行支付之前实现触摸ID身份验证:(新增touchID认证函数“authenticate”,在handle函数中调用)funchandle(sendPaymentintent:INSendPaymentIntent,completion:@escaping(INSendPaymentIntentResponse)->Void){self.authenticate(successAuth:{guardletpayee=intent.payee,letpayeeHandle=p
总结尝试对INSendPaymentIntent进行编码,但无法区分具有相似名字的联系人。Siri似乎在INPersonResolutionResult.disambiguation(with:matchedContacts)之后进入循环代码背后的想法我最初选择使用联系人的名字来搜索联系人,因为如果用户仅指定名字,使用INPerson显示名称会返回与查询匹配的第一个联系人。(即“付给凯文50美元”将自动选择凯文·培根而不是凯文·史派西)。不幸的是,使用给定的名字会使Siri陷入循环,要求用户一遍又一遍地指定联系人...问题有没有什么方法可以使用联系人的名字搜索联系人,而无需将Siri发
IntentHandler类:importIntentsclassIntentHandler:INExtension,INStartWorkoutIntentHandling{publicfunchandle(startWorkoutintent:INStartWorkoutIntent,completion:@escaping(INStartWorkoutIntentResponse)->Void){letuserActivity=NSUserActivity(activityType:NSStringFromClass(INStartWorkoutIntent.self))letr
ios不允许包含的应用程序和包含的扩展共享一个公共(public)容器,因此UserDefaults是建议的解决方案。我已经尝试将UserDefaults与sirikit意图处理程序一起使用,假设处理程序的行为类似于扩展,如下所示:在IntentHandler.swift中letshared=UserDefaults(suiteName:XXXXXXXX.group...)shared?.set("savedvalue1",forKey:"key1")shared?.set("savedvalue2",forKey:"key2")shared?.set("savedvalue3",fo