IOS 中什么是 SiriKit?如何使用?代码举例讲解

SiriKit 是苹果提供的框架,用于将 App 的特定功能集成到 Siri 中。我们可以通过它来扩展 Siri 的能力,让用户可以通过语音来控制和使用 App。

使用 SiriKit 的基本步骤:

  1. 在 Xcode 中启用 App 的 Siri 支持,需要添加 com.apple.developer.siri 必需的权限。
  2. 选中要对 Siri 公开的 Intent,目前支持的有:
    • 任务(Task)
    • 消息(Message)
    • 注释(Note)
    • 照片(Photo)
    • 付款(Payment)
    • 回传信息(VHlback)
    • 体育运动(Workout)等
  3. 实现相关协议以响应 Intent,例如:
    • INTaskTasksRequest: 用于任务 App
    • INMessageSendRequest: 用于消息 App
    • INNoteRequest:用于注释 App
  4. 在 Info.plist 添加 NSExtension 属性来定义 Siri 扩展。
  5. 在 AppDelegate 中调用 extensionContext?.activate() 来激活 Siri 扩展。
  6. 在 Siri Intent UI 中,用户可以看到 App 的 Siri 功能,并通过语音与之交互。

下面是一个简单的 SiriKit 示例:
Info.plist:

xml
<key>NSExtension</key>
<dict>
    <key>NSExtensionAttributes</key>
    <dict>
        <key>SiriIntentsSupported</key>
        <array>
            <string>INSearchForMessagesIntent</string>
        </array>
    </dict>
</dict> 
AppDelegate:
swift
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
   // Activate Siri Intents 
   extensionContext?.activate()
   return true
}

通过 SiriKit,我们可以让 Siri 更加智能,与用户的各种 App 进行语音交互。这使得 Siri 成为连接不同 App 的重要桥梁。