WWDC Quick Look 💓 By SwiftGGTeam
Feature your actions in the Shortcuts app

Feature your actions in the Shortcuts app

元の動画を見る

ハイライト

iOS 14 のショートカット アプリは、意図、ユーザー アクティビティ、INVoiceShortcutCenter提案: 自動提案、ギャラリー、エディターに一般的なアクションを表示し、ユーザーが数回クリックするだけで日常のタスクをショートカットに変えることができます。

主要内容

ユーザーは、通常、タスクが繰り返し行われるため、タスクを自動化することを望んでいます。本屋に行くときに読書リストを開いたり、夜に語学を練習したり、仕事を終える途中でお気に入りのプレイリストを再生したりすることは、すべて別のアプリに隠されています。ユーザーが独自のショートカットを構成したい場合は、どのアプリがどのアクションを提供するかを把握し、適切なトリガー条件を手動で見つける必要があります。

iOS 14 では、ショートカットの自動提案が拡張されます。システムは、毎日の固定プロセスを推奨するだけでなく、ユーザーアクティビティ、システムインテント、アプリによって提供されたカスタムインテントに基づいて、アクションが特定の時間、場所、またはデバイスの接続条件で実行するのに適しているかどうかを判断します。Duolingo in Session の例としては、夜間に頻繁にフランス語を練習すると、システムが毎日営業日の 9 時に自動的に練習することを推奨します。

開発者がしなければならないことは非常に具体的です。ユーザーが実際の操作を完了したときにインタラクションを提供し、システムに学習させます。使用INVoiceShortcutCenter明確なショートカットの提案を提供します。長期間表示する必要があるインテントを構成可能としてマークします。このようにして、アクションは自動提案、ショートカット ギャラリー、ショートカット エディターという 3 つの入り口に入ります。

自動提案は実際の使用から生まれます

講演では、自動提案には寄付のみが必要であると強調した。ユーザーがアプリでスープを注文し、アルバムを再生し、トレーニング セッションを開始すると、アプリはこのインタラクションをシステムに提供します。その後、システムはその行動を、夕方、通勤、ジムへの到着、AirPods の接続などのユーザーの日常パターンに関連付けます。

ギャラリーと編集者は入り口を積極的に整理する必要がある

ショートカット ギャラリーの「アプリからのショートカット」は、システムの推測に完全に依存しているわけではありません。アプリは通過できますINVoiceShortcutCenterいくつかの価値の高いアクションが安定して表示されるように提案を設定します。エディターでのアクションは、寄付、INVoiceShortcutCenter提案、構成可能なインテント、およびいくつかのシステム インテントが表示される場合があります。

Daily Routines は垂直型アプリのためのスペースを確保します

毎日のルーティンは、iOS 13 で導入された特別な自動提案であり、iOS 14 でも引き続き通勤やフィットネスのルーティンに組み込まれます。メディアアプリの導入と寄付INPlayMediaIntentその後、「出勤」、「帰宅」、「ジム」のプロセスに入ることができます。フィットネスアプリが使用するのはINStartWorkoutIntentその後、「At the Gym」プロセスに入ることができます。

詳細

1. インタラクションを寄付して、システムに自動提案を学習させます (02:06)

自動提案の中心的な入力は寄付です。そのままの原稿では、例としてスープ配達アプリを使用しています。ユーザーが注文した後、アプリは初期化されます。PlaceOrderIntent、スープパラメータを次のように設定します。INObject、スープと配達場所のパラメータに画像を設定し、使用しますINInteractionラップして呼び出すdonate

このセッションには公式のコード スニペットはありません。以下は、草稿に逐語的に明記されている呼び出しシーケンスを最小の Swift 形式にまとめただけです。

let intent = PlaceOrderIntent()
let soup = order.soup

intent.soup = INObject(identifier: soup.identifier, display: soup.name)
intent.setImage(soupImage, forParameterNamed: "soup")
intent.setImage(deliveryLocationImage, forParameterNamed: "deliveryLocation")

let interaction = INInteraction(intent: intent, response: nil)
interaction.donate(completion: nil)

キーポイント:

  • PlaceOrderIntentこれはアプリ自体によって定義されたカスタム インテントで、スープの注文アクションを表すために使用されます。
  • intent.soup使用INObject提案および編集インターフェイスでユーザーが選択したスープをショートカットで表示できるように、パラメーター値を示します。
  • setImage提案をより読みやすくすることを目的として、スープと配達場所のパラメーターの画像を設定するプレゼンテーションの手順に対応します。
  • INInteraction特定の操作をシステムが学習できるイベントにパッケージ化します。
  • donateそれは学習を引き起こすための重要な呼びかけです。スピーチでは、このシステムでは自動提案を生成するために開発者に寄付のみが必要であると明確に述べられていました。

2. アクションを日課に入れます (04:13)

Daily Routine は、より構造化された自動提案です。ショートカットは段階的なプロセスを使用して、ユーザーが出勤、帰宅、ジムでの自動化を構築できるようにします。アプリは、ユーザーが実際にこれらのプロセスに入る機会を得るためにそれを使用するときに、対応するシステムインテントを使用して寄付する必要があります。

let playbackInteraction = INInteraction(intent: playMediaIntent, response: nil)
playbackInteraction.donate(completion: nil)

let workoutInteraction = INInteraction(intent: startWorkoutIntent, response: nil)
workoutInteraction.donate(completion: nil)

キーポイント:

  • playMediaIntent演説の点呼に対応INPlayMediaIntent、音楽、ポッドキャスト、オーディオブック アプリに適しています。
  • startWorkoutIntent演説の点呼に対応INStartWorkoutIntent、フィットネスアプリに適しています。
  • このセッションでは、メディアまたはワークアウト インテントの完全な構成ではなく、採用と寄付についてのみ説明するため、この例では 2 つのインテントの初期化パラメータは拡張されません。
  • ショートカットは、ユーザーの行動を通勤やフィットネスなどのルーチンに関連付け、アクションを対応するステップに組み込みます。

3. 使用するINVoiceShortcutCenterギャラリーの提案を設定する (06:44)

ギャラリーの「アプリからのショートカット」は、アプリによって明示的に設定されたショートカットの提案と、寄付に基づくスマートな提案の 2 つのソースから提供されます。明示的な設定は、注文ステータスの確認やお気に入りリストを開くなど、ユーザーがショートカットを開いたらすぐに表示されるようにするアクションに適しています。

let orderStatusShortcut = INShortcut(intent: orderStatusIntent)
let topSoupsShortcut = INShortcut(userActivity: topSoupsUserActivity)

INVoiceShortcutCenter.shared.setShortcutSuggestions([
    orderStatusShortcut,
    topSoupsShortcut,
])

キーポイント:

  • INShortcut(intent:)インテントを推奨されるショートカット アクションにラップします。
  • INShortcut(userActivity:)に基づいてみましょうNSUserActivityアクションを提案リストに入力することもできます。
  • setShortcutSuggestionsこれは、開発者がギャラリーの入り口をアクティブに整理するための API です。
  • ギャラリーには、ユーザーが最近行ったことに基づいてスマートな提案が表示されるため、明示的な提案と寄付は一緒に行う必要があります。

4. アクションがショートカット エディターに安定して表示されるようにします (07:50)

エディターは、ユーザーが独自のショートカットを作成する場所です。このスピーチでは、編集者の情報源をいくつかのカテゴリーに分類しています。最近の寄付やINVoiceShortcutCenter推奨されるアクション、主要なパラメーターをサポートするアクション、構成可能とマークされたインテント、およびいくつかのシステム インテント。

Shortcuts Editor visibility:
- Donate actions during regular app usage.
- Set shortcut suggestions with INVoiceShortcutCenter.
- Mark important intents as configurable.
- System intents SendPayment, RequestPayment, and RequestRide can appear directly.

キーポイント:

  • 寄付により、編集者はユーザーが最近実行したアクションまたは頻繁に実行したアクションを表示できます。
  • INVoiceShortcutCenter一連の高価値アクションの固定推奨に適しています。
  • 構成可能なインテントは、寄付や提案がなくてもエディターに表示できます。
  • 主要なパラメータをサポートするアクションは、Streak の例の「5 マイルを走る」や「フランス語を勉強する」など、パラメータ オプション行とともに表示されます。

重要ポイント

  • やるべきこと: ユーザーが高頻度のタスクを完了するたびに、対応するインテントを寄付します。実行する価値がある理由: iOS 14 の自動提案は、寄付に基づいてユーザーの習慣を学習するため、適切な時間、場所、またはデバイスの接続条件でアクションが表示される可能性があります。開始方法: まず、注文、プレイ、チェックイン、トレーニングの開始など、安定して成功したアクションを選択し、成功コールバックで作成します。INInteractionそして電話するdonate
  • 内容: ショートカット ギャラリーに対して公式に推奨される一連のアクションを管理します。実行する価値がある理由: ギャラリーは、純粋に受動的な入り口ではありません。INVoiceShortcutCenter最も価値のあるアクションを「アプリのショートカット」に直接入れることができます。開始方法: 新規ユーザーが理解して使用できるアクションを 2 ~ 4 つ選択してくださいINShortcutインテントまたはユーザーアクティビティをラップして呼び出しますsetShortcutSuggestions
  • やるべきこと: 長期間表示する必要があるアクションを構成可能なインテントにします。実行する価値がある理由: ユーザーがアプリ内で寄付をまだトリガーしていない場合でも、エディターには構成可能なインテントが表示されます。開始方法: インテント定義ファイルを確認し、ユーザーによる手動の組み合わせに適したアクションを構成可能としてマークし、主要なパラメーターの表示順序を整理します。
  • やるべきこと: メディア アプリは積極的に毎日のルーティンに接続します。価値がある理由: 出勤、帰宅、ジムのフローすべてにメディアの再生ステップが含まれているため、ユーザーは数回クリックするだけで再生コンテンツをマルチステップの自動化に追加できます。開始方法: 導入するINPlayMediaIntent、ユーザーが音楽、ポッドキャスト、またはオーディオブックを再生した後の寄付インタラクション。
  • 機能: フィットネス アプリでは、ワークアウトをショートカットで開始できます。実行する価値がある理由: ジムでのルーチンは、ユーザーがフィットネス関連のアクションを設定できるようにガイドします。INStartWorkoutIntentプロセスへの明確な入口点です。開始方法: システム ワークアウト インテントを使用してトレーニング アクションを表現し、トレーニングが正常に開始された後に寄付し、パラメーター名と画像がショートカットで読み取れることを確認します。

関連セッション

コメント

GitHub Issues · utterances