インデックス可能なオブジェクトの一般的なビルダー

ステッカー

これは、Gboard と統合するためにステッカーまたはステッカー パックのインデックスを作成するときに含める最も重要なプロパティの概要です。例については、Github のApp Indexing サンプルを参照してください。

財産説明
name検索に使用された名前またはキーワード - 表示されません。 「スヌーピー ステッカーパック」
urlアプリ内のステッカーまたはステッカー パックへの URL リンク。 「http://sticker/pack/canonical/url/スヌーピー」
imageステッカーまたはステッカー パックのグラフィック。最適な画質を得るには、320 ピクセルまたは 500 ピクセルのサイズの正方形の画像を使用してください。 「http://link/to/the/image/bye」
descriptionステッカーまたはステッカー パックのアクセシビリティ ラベル。 「スヌーピーステッカーパック」

例:ステッカーパック

// Build and index the sticker objects on first run after update or install
// to minimize lag between sticker install and stickers surfacing in Gboard.

FirebaseAppIndex.update(new Indexable.Builder("StickerPack")
   .setName("Snoopy Pack")
   .setImage("content://sticker/pack/canonical/image")
   // see: Support links to your app content section
   .setUrl("http://sticker/pack/canonical/url/snoopy")
   // Set the accessibility label for the sticker pack.
   .setDescription("A sticker pack of Snoopy")
   .put("hasSticker",
        new Indexable.Builder("Sticker")
          .setName("Hey")
          .setImage("http://link/to/the/image/hey")
          .setDescription("A Snoopy hey sticker.")
          .build(),
       new Indexable.Builder("Sticker")
          .setName("Bye")
          .setImage("http://link/to/the/image/bye")
          .setDescription("A Snoopy bye sticker.")
          .build())
   .build());

例:個別ステッカー

Indexable[] stickers = new Indexable[]{
      new Indexable.Builder("Sticker")
   .setName("Hey")
   .setImage("http://www.snoopysticker.com?id=1234")
   // see: Support links to your app content section
   .setUrl("http://sticker/canonical/image/hey")
   // Set the accessibility label for the sticker.
   .setDescription("A sticker for hi")
   // Add search keywords.
   .put("keywords", "hey", "snoopy", "hi", "hello")
   .put("isPartOf",
        new Indexable.Builder("StickerPack")
          .setName("Snoopy Pack"))
          .build())
   .build()),
new Indexable.Builder("Sticker")
   .setName("Bye")
   .setImage("http://www.snoopysticker.com?id=4567")
   // see: Support links to your app content section
   .setUrl("http://sticker/canonical/image/bye")
   // Set the accessibility label for the sticker.
   .setDescription("A sticker for Bye")
   // Add search keywords.
   .put("keywords", "bye", "snoopy", "see ya", "good bye")
   .put("isPartOf",
        new Indexable.Builder("StickerPack")
          .setName("Snoopy Pack")
          .build())
   .build())};
// Make sure we update stickers in batch
FirebaseAppIndex.update(stickers);

メッセージ

これは、メッセージのインデックス作成時にアプリで指定する必要がある最も重要なプロパティの概要です。

財産説明
urlアプリ内のメッセージにリンクする URL。 「myapp://messages/42」
nameメッセージの件名、または別の件名がない場合はメッセージ自体。 「Re:ランチ」
textオプション。メッセージの本文 (該当する場合)。個別の件名のないインスタント メッセージング タイプのメッセージの場合は、「名前」を使用します (上記を参照)。 「昼食は空いていますか?」
dateReceived受信メッセージの場合、メッセージが受信された時刻。新しい日付(2016,6,2,23,43,00)
dateSent送信メッセージの場合、メッセージが送信された時刻。新しい日付(2016,6,2,23,43,00)
isPartOf.idメッセージが含まれている会話またはスレッドの ID。 「42」
senderメッセージの送信者。
sender.name送信者の名前。 「アリス」
sender.urlオプション。アプリ内の人物にリンクする URL。 「http://example.net/profiles/alice」
sender.imageオプション。送り主のイメージです。 Web URL またはコンテンツ URI のいずれかを使用できます。 「http://example.net/alice.jpg」
sender.emailオプション。送信者の電子メール アドレス。 「アリス@example.net」
sender.telephoneオプション。送信者の電話番号。 「+16502530000」
sender.isSelfユーザーが送信者であるかどうかを示します。デフォルトは false です。間違い
recipientメッセージの 1 人または複数の受信者。
recipient.name受信者の名前。 "ボブ"
recipient.urlオプション。アプリ内の人物にリンクする URL。 「http://example.net/profiles/bob」
recipient.imageオプション。受け手のイメージです。 Web URL またはコンテンツ URI のいずれかを使用できます。 「http://example.net/bob.jpg」
recipient.emailオプション。送信者の電子メール アドレス。 「ボブ@example.net」
recipient.telephoneオプション。送信者の電話番号。 「+16502530000」
recipient.isSelfユーザーが受信者であるかどうかを示します。デフォルトは false です。真実
messageAttachmentオプション。メッセージへの 1 つまたは複数の添付ファイル。
messageAttachment.nameメッセージの添付ファイルの名前。 "ステッカー"
messageAttachment.image添付ファイルを表す画像。 Web URL またはコンテンツ URI のいずれかを使用できます。 「http://example.net/stickers/23.png」

例: 受信メッセージ

Indexable message = Indexables.messageBuilder()
    .setUrl("myapp://messages/42")
    .setText("Are you free for lunch?")
    .setDateReceived(new Date(2016, 6, 2, 23, 44, 00))
    .setIsPartOf(Indexables.conversationBuilder().setId("42")
    .setSender(Indexables.personBuilder()
        .setName("Alice")
        .setImage("http://example.net/alice.jpg")
        .setEmail("alice@example.net")
        .setTelephone("+16502530000"))
    .setRecipient(Indexables.personBuilder()
        .setName("Bob")
        .setImage("http://example.net/bob.jpg")
        .setEmail("bob@people.net")
        .setTelephone("+16502530000")
        .setIsSelf(true))
    .build();
 

電子メール メッセージの場合は、代わりにIndexables.emailMessageBuilder()を使用してください。サポートされているフィールドに違いはありませんが、結果の UI は異なります (電子メールの件名行の強調表示など)。

注記

これは、メモのインデックス作成時にアプリで指定する必要がある最も重要なプロパティの概要です。

財産説明
urlアプリ内のメモにリンクする URL。 「myapp://notes/42」
nameメモのタイトル、または別のタイトルがない場合はメモのテキスト自体。 "買い物リスト"
textオプション。該当する場合、メモのテキスト。個別のタイトルのないメモの場合は、「名前」を使用します (上記を参照)。 「ステーキ、パスタ、ワイン」
imageメモを表す画像。 Web URL またはコンテンツ URI のいずれかを使用できます。 「http://example.net/shopping.jpg」
dateCreatedメモの作成時刻。新しい日付(2016,6,2,23,43,00)
authorオプション。メモの作成者。
author.nameメモの作成者の名前。 "ボブ"

例: 注記

Indexable note = Indexables.noteDigitalDocumentBuilder()
    .setUrl("myapp://notes/42")
    .setName("Shopping list")
    .setText("steak, pasta, wine")
    .setImage("http://example.net/shopping.jpg")
    .setDateCreated(new Date(2016, 6, 2, 23, 43, 00))
    .build();