ベスト プラクティス

このドキュメントでは、設計と情報配信のベスト プラクティスについて説明します。該当する場合は、以下のガイドラインに沿って、優れたユーザー エクスペリエンスを提供してください。

設計、コードの 2 番目

Glass での開発を開始する前に、設計の原則とパターンを学びます。詳しくは、デザインガイドをご覧ください。

設計に関する早い段階でフィードバックを取得するには、Glassware Flow の設計を作成して、審査チームに送信します。

固定したタイムライン アイテムをランチャーに使用しない

ユーザーが Glassware とその機能を起動する主な方法は 2 つあります。OK Glass のメインメニューから音声コマンドまたはタップするか、タイムライン カードのコンテキスト メニューから使用します。

Glassware を起動するために、メニューカードをタイムライン カードに固定することは強制しないでください。Mirror API は、ユーザーが構成した設定に基づく定期的な通知用に設計されています。

GDK Glassware を起動したり Mirror API を呼び出したりするためのメニュー項目を提供しても、エクスペリエンスが定期的な通知の設計パターンに一致し、すぐに操作できるように Mirror API を使用していない場合に限ります。

たとえば、ペットの世話に関する Glassware は、タイムライン カードを挿入して、後でユーザーがその機能を固定できるよう強制しないでください(例: 「犬の検索」、「猫の検索」、「鳥など」)。代わりに、Glassware では、ユーザーが希望するペットの条件を設定し、この条件を満たすカードを定期的に配信できるようにする必要があります。このカードには、「プロフィールを読む」や「ペットを採用」などのアクションを実行するメニュー項目を含めることができます。

カードの標準的なデザインとテンプレートに従う

可能であれば、承認済みのカードデザインテンプレートを使用してください。テンプレートが機能しない場合:

  • Mirror API を使用している場合は、base_style.css のスタイルを使用します。
  • 組み込みのテンプレートとして、パディングとスペースを使用する一般的なルールに従います。

メディアの要件を遵守する

メディアを配布する場合は、次のガイドラインに従ってください。

  • 公開動画はすべてストリーミングされ、タイムライン アイテムには添付されません。
  • 動画のアスペクト比は 16:9 です。
  • 動画の解像度は 640×360 ピクセルです。
  • H.264 形式

適切なバンドルとページ設定

バンドルとページネーションを使用すると、カードをグループ化できます。ただし、次の状況ではカードを正しく使用してください。

バンドル

  • 類似しているが、同じカード上にあるべきではないカードのグループには、バンドルを使用します。
  • バンドルのカバーカードは、バンドルに含まれるカードとは視覚的に異なるダイジェストとして設計します。
  • 通知音は、バンドルごとに 1 回だけユーザーに知らせます。

一括販売が効果的であるケース:

  • メールまたは短いメッセージのスレッド
  • 同じユーザー間で 3 つの SMS メッセージ
  • 1 時間以内に撮影した 5 枚の写真
  • 関連記事を一度に挿入しました
  • 開催中のスポーツゲームの主なイベントとスコアの最新情報のリスト

一括販売がうまく機能しない場合:

  • サービスのすべてのコンテンツ
  • 1 日に多数の広告見出しが Glass に送信される

ページ分け

スペースに制約があるため 1 つのカードに収まらないタイムライン アイテムにはページ分けを使用しますが、同じカードには配置しないでください。

ページ分けが適切に機能しているケース:

  • 1 枚のカードに収まらない単一のメール、ニュース記事、または同様のコンテンツ

ページ分けがうまくいかない場合:

  • 複数のカードやニュースなど、固有のカードのグループ

標準のメニュー設計に従う

カスタム メニュー アイテム

  • 各メニュー項目のアクションには、50 × 50 のアイコンを関連付ける必要があります。Glass の UI との整合性を保つため、Glass のメニュー アイコンを使用します。
  • 可能な場合は、表示名を数語に制限します。オブジェクトの有無にかかわらず、命令動詞を使用します。
  • まったく別の目的でメニュー項目を使用する場合を除き、組み込みのメニュー項目にはデフォルトのアイコンと表示名を使用します。
  • アイコンの色は透明で、背景が透明です。
  • メニュー項目の短くて実用的な表示名を使用します。命令動詞は、オブジェクトの有無を問わず、高い効果を発揮します。次に例を示します。
  • [閉じる] メニュー項目はタイムライン カードのみをタイムラインから削除するため、このカスタム メニュー項目は必要な場合にのみ作成します。一般的に、タイムライン アイテムは時間の経過とともに自然に減衰し、ユーザーがアプリを積極的に管理する必要がないようにします。
  • 名前は半角 15 文字以内で入力してください。例:
悪い 良好
録画を延長する 動画を拡張
ジョーにメッセージを送信 メッセージを送信

組み込みのメニュー項目

  • Reply または Reply All - 音声の返信は、音声で自由形式の入力を取得することを目的としています。音声レスポンスを使用して、ゲーム内での可能な移動など、限られたオプション セットを取得しないでください。

  • Delete - タイムライン カードを閉じて、保存されているすべてのタイムライン カード(ローカル ストレージとサーバー ストレージ)に対応するコンテンツを削除します。利用できる機能が「閉じる」の場合は、「削除」のメニュー アイテムを表示してユーザーを混乱させないでください。

迅速な対話には Mirror API を使用しない

Mirror API は、ユーザーからのリクエストを受信し、リアルタイムで、または低レイテンシで応答するようには設計されていません。これが要件である場合は、GDK を使用します。

たとえば、Mirror API Glassware は「メモをとる」コマンドで適切に機能します。ユーザーは、コマンドを呼び出した後、Glassware からのレスポンスを待つ必要がないからです。

これに対して「レシピを見つける」スパゲッティは、Mirror API Glassware では適切に機能しません。ユーザーは検索結果がすぐに表示されることを期待しているためです。Mirror API では、Glass を継続して使用するためにカードがタイムラインに挿入されるまで待つ必要がありますが、これは優れたユーザー エクスペリエンスではありません。

この制約は、Glass ホームカードの主な音声コマンドのほか、カードや没入メニューのメニュー アイテムに適用されます。

コンテンツを適切に作成する

カードのコンテンツを作成する場合、各カードは簡潔で、論理的な情報が 1 つ含まれている必要があります。さらに、以下のことにご留意ください。

  • 可能な場合は、テキストではなく画像を使用する
  • 画像を元のアスペクト比で表示します(トリミングも可能)。
  • カードのフッターの中央領域は空白のままにします。[ok glass] コンテキスト音声メニューがここに表示され、その下のコンテンツはすべてブロックされます。
  • 必要に応じて、auto-resize CSS クラスを使用して、コンテンツに応じてフォントサイズを自動的に変更します。
  • 文章作成ガイドラインを遵守する。