オーディオ グラスとディスプレイ グラスは標準の Android 通知フレームワークを使用するため、同じ通知 API を使用してさまざまなフォーム ファクタのユーザーに通知できます。互換性を最大限に高め、開発のオーバーヘッドを最小限に抑えるには、Android NotificationCompat API を使用します。Android は、受信した通知を解析し、デバイスの機能に基づいて表示を調整します。
通知に関するベスト プラクティスに沿って実装することで、既存のスマートフォンの通知を、追加の設定をほとんど行わずにオーディオ グラスやディスプレイ グラスにブリッジできます。以下のセクションでは、オーディオ グラスとディスプレイ グラスの通知がどのように自動調整されるかについて説明します。
システムが通知をブリッジするかどうかを判断する方法
Android では、着信通知の Notification.Style と他のいくつかの条件を組み合わせて、通知をユーザーのオーディオ グラスまたはディスプレイ グラスにブリッジするかどうかを判断します。
サポートされている通知スタイル
オーディオ グラスとディスプレイ グラスは、Android Notification.Style クラスのサブセットをサポートしています。以下の通知スタイルは、ディスプレイ メガネで完全にレンダリングされます。
他の通知スタイル(InboxStyle など)は完全に解析され、レンダリングされません。これらのスタイルでは、スタイル固有のフィールド(InboxStyle の概要テキストなど)はレンダリングされません。代わりに、システムは標準スタイルに戻り、コンテンツのタイトルなどの共通フィールドのみをレンダリングします。
ブリッジングのその他の必須条件
通知のスタイルに加えて、通知がユーザーのオーディオ グラスまたはディスプレイ グラスにブリッジされるには、次の条件も満たす必要があります。
- 通知は、配信を妨げる次のユーザー設定のいずれかの対象ではありません。
スマートグラスのコンパニオン アプリの設定:
アプリレベルの切り替え: デフォルトでは、ユーザーがどの通知をスマートグラスにブリッジするかを意図的に決定できるように、スマートグラス アプリでアプリの通知がオフに切り替えられています。
このデフォルトの動作により、ユーザーは特定のアプリの通知をスマートフォンでは有効にしたまま、スマートグラスでは無効にできます。ユーザーが Google Glass アプリでアプリの通知を有効にするかどうかを判断できるように、通知によってアプリのユーザー エクスペリエンスがどのように向上するかを説明します。
ユーザーのスマートフォンのシステムレベルの通知設定:
アプリレベルの切り替え: スマートフォンでアプリの通知を完全に無効にすると、そのアプリの通知はブリッジされません。
通知チャンネルの設定: ユーザーがアプリ定義の通知チャンネルの通知を無効にすると、そのチャンネルの通知はブリッジされません。
スマートフォンのシステムレベルのサイレント モード(DND)設定: AI グラスはスマートフォンの DND 設定を使用します。ユーザーのスマートフォンがサイレント モードの場合、ユーザーのメガネでも通知は抑制されます。
- 通知は
IMPORTANCE_HIGHまたはIMPORTANCE_MAXを持つチャンネルに割り当てられます。 - 通知のタイトルが
nullではないか、空ではない。 - 通知に
FLAG_LOCAL_ONLYがマークされていません。このフラグが設定されている場合、通知はプライマリ デバイスに制限されます。 - ライブ情報通知として認定される場合を除き、通知は永続的なバックグラウンド タスクなどの進行中の通知ではありません。
ライブ情報通知がディスプレイ メガネにブリッジされる仕組み
ライブ情報通知は、配車サービスの到着予定時刻、ターンバイターン ナビゲーション、通話中など、リアルタイムのモニタリングが必要な、進行中のユーザー開始アクティビティ用に設計された特別なクラスの通知です。通常の通知とは異なり、ライブ情報はアクティブな状態を維持し、システム UI 全体で目立つように表示される情報の継続的なストリームを提供します。
ディスプレイ メガネの場合、ライブ アップデートは主に次の 2 か所に表示されます。
- ホーム画面: ライブ情報の通知は、ホーム キャンバスにカードとして表示されます。複数のライブ アップデートが有効になっている場合、システムは代わりにスタックを使用します。
- システムバー: ユーザーが別のアプリやエクスペリエンスを使用している場合、ライブ更新はシステムバーのステータス チップとして表示されます。ステータスが変更されるたびに、これらのチップが短時間表示されます。ディスプレイがスリープ状態の場合、ステータス チップが自動的に画面を復帰させてステータスの変更を通知するため、ユーザーは手動で操作しなくても情報を把握できます。
ライブ情報通知が AI グラス用のサポートされている通知スタイルを使用している場合、完全に解析され、レンダリングされます。他の通知スタイル(BigTextStyle など)を使用するライブ更新通知は完全に解析されず、代わりにシステムが標準スタイルの通知に適合させます。
ディスプレイ メガネで利用できる通知アクション
ディスプレイ メガネでは、着信通知はヘッドアップ通知(HUN)として表示されます。MessagingStyle 通知の場合、アプリはダイレクト返信アクションを使用できます。タップして詳細を表示し、返信できます。他のすべての通知スタイルでは、システム提供のクリア アクションのみが利用可能です。
ダイレクト返信を使用する場合、ユーザーは音声で返信したり、スマート リプライのリストをスクロールして選択したりできます。スマート リプライでは、オンデバイス AI を使用して、短く関連性の高い返信候補を提案できます。