You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何无需用户录短语自动添加Siri Shortcuts及解决ITMS-90626错误

解决Siri快捷指令自动添加与ITMS-90626审核错误问题

一、实现无需用户录制的快捷指令添加(解决setShortcutSuggestions无效问题)

INVoiceShortcutCenter.shared.setShortcutSuggestions仅用于向Siri提供快捷指令建议,不会直接将指令添加到用户的Siri库中。要实现类似Zomato的一键添加效果,需按以下步骤操作:

    1. 创建自定义意图实例
      先确保已定义对应的Intent类(比如StartBoulderClimbIntent),初始化并配置参数:
let climbIntent = StartBoulderClimbIntent()
climbIntent.ascent = true // 设置意图参数
let climbShortcut = INShortcut(intent: climbIntent)
    1. 触发用户授权添加流程
      通过按钮等交互触发addVoiceShortcut方法,系统会弹出Siri授权界面,用户确认后即可完成添加(可预设默认短语,用户可修改):
INVoiceShortcutCenter.shared.addVoiceShortcut(climbShortcut) { voiceShortcut, error in
    if let error = error {
        print("添加失败:\(error.localizedDescription)")
    } else {
        print("快捷指令已添加")
    }
}

注意:苹果不允许应用静默添加快捷指令,必须由用户主动触发并确认授权,这是隐私规则要求,Zomato等应用也是通过引导用户点击按钮完成添加。

    1. 排查setShortcutSuggestions无效的原因
      如果只是想提供建议但没生效,检查以下几点:
    • 确认Info.plist中已添加NSUserActivityTypes和Siri相关权限配置
    • 确保INShortcut关联的意图已在.intentdefinition文件中正确配置,且启用了Siri支持
    • 在应用启动完成后(比如applicationDidFinishLaunching)或用户完成相关操作后调用该方法,确保时机正确

二、解决ITMS-90626审核错误

该错误是因为你的Siri快捷指令示例短语包含了"Siri"关键词,苹果审核规则明确要求示例短语仅需填写用户触发时说的核心内容(用户实际调用时会自己加上"Siri"前缀)。

解决方法:

  • 打开你的.intentdefinition文件,找到对应的意图示例短语
  • 将"Siri, start a boulder climb with ascent"修改为"Start a boulder climb with ascent",同理修改另一条短语为"Start a boulder workout with ascent"
  • 重新打包提交审核即可

内容的提问来源于stack exchange,提问作者Chandaboy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 01:17:13