SiriKit Tutorial for iOS

はじめに

2018 WWDCにおいて、iOS12の新しい機能「Siri Shortcuts」が紹介されました。

Siri Shortcutsについて調べてみた【ショートカット登録編】 - Qiita

ユーザーの日常のルーチンを適切なタイミングでサジェストしてくれ、ショートカット実行させてくれる便利な機能です。 ロックスクリーン、Spotlight検索、SiriのApple Watchインターフェースから直接アプリのアクションを実行することができます。

現在もiPhone上にSiriからの提案(APP)が表示されますが、これがショートカットから実行できるようになるのでしょうか?

かつて、音声認識が盛んだった頃、電子秘書と呼ばれるアプリが登場しましたが、いずれ、Siriが電子秘書になると思います。

まずはSiri Kit

Siri Shortcutsのサンプル実装を試すまえに、まず、Siri Kitについて調べてみました。 Siri Kitを使うとどのようなことができるのかは、以下のページが詳しいです。

SiriKitを試してみた集 - Qiita

現状は、限られたドメインのみ使われるため電子秘書とは言えませんが、それでも配車予約、レストラン予約は便利だと思います。

これだと何となくわかっただけの状態なので、チュートリアルを実行してみました。 WenderLoonという配車サービスアプリです。

SiriKit Tutorial for iOS

Siri Kitを使っていない状態からステップごとに使えるようにしているためとてもわかりやすいです。書いているとおりに実装すれば動くと思います。途中コンパイルエラーが発生しますが、Xcodeのお勧めの方法でFixすればOKでした。

ただ、言語が英語のため「99(passengers in) Red Balloonsの前までしか実行していません。

  • Add an Intents extension
  • Create appropriate handler objects
  • Return the handler objects in your INExtension subclass
  • Declare the supported intents in the Info.plist of the extension
  • Request the user’s permission to use Siri
  • Add a Siri usage description to the app’s Info.plist
  • Add the Siri entitlement to the app

このアプリを動かした後に、AppleのSikirKitプログラミングガイドを読むと理解が進みました。

SiriKitプログラミングガイド:SiriKitの紹介

Microsoft Xamarin.iOSでもSiriKitは使えるようです。こちらのドキュメントも分かりやすいです。

Xamarin.iOS で SiriKit - Xamarin | Microsoft Docs

今後

SiriKitにカスタム語彙を登録できるようです。これが出来るようになると面白そうです。

SiriKitプログラミングガイド:Intentのドメイン