Naklejki
Oto przegląd najważniejszych właściwości, które należy uwzględnić podczas indeksowania naklejek lub pakietów naklejek w celu integracji z Gboard. Aby zapoznać się z przykładem, zobacz przykład indeksowania aplikacji w serwisie Github.
Nieruchomość | Opis | Przykład |
---|---|---|
name | Nazwa lub słowo kluczowe użyte do wyszukiwania — nie są wyświetlane. | „Pakiet naklejek ze Snoopym” |
url | Adres URL prowadzący do naklejki lub pakietu naklejek w aplikacji. | „http://sticker/pack/canonical/url/snoopy” |
image | Grafika naklejki lub pakietu naklejek. Aby uzyskać optymalną jakość obrazu, używaj kwadratowych obrazów o rozmiarze 320 lub 500 pikseli. | „http://link/do/zdjęcia/pa” |
description | Etykieta ułatwień dostępu dla naklejki lub pakietu naklejek. | „Paczka naklejek ze Snoopym” |
Przykład: pakiet naklejek
// 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());
Przykład: Indywidualna naklejka
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);
Wiadomość
Oto przegląd najważniejszych właściwości, jakie powinna określać aplikacja podczas indeksowania wiadomości.
Nieruchomość | Opis | Przykład |
---|---|---|
url | Adres URL prowadzący do wiadomości w aplikacji. | „mojaaplikacja://wiadomości/42” |
name | Temat wiadomości lub bezpośrednio sama wiadomość, jeśli nie posiada osobnego tematu. | „Re: obiad” |
text | Opcjonalny. Treść wiadomości, jeśli ma to zastosowanie. W przypadku wiadomości typu komunikator internetowy bez osobnego tematu należy użyć słowa „nazwa” (patrz wyżej). | – Czy jesteś wolny na lunch? |
dateReceived | Godzina otrzymania wiadomości dla wiadomości przychodzących. | nowa data (2016, 6, 2, 23, 43, 00) |
dateSent | Godzina wysłania wiadomości dla wiadomości wychodzących. | nowa data (2016, 6, 2, 23, 43, 00) |
isPartOf.id | Identyfikator konwersacji lub wątku, którego częścią jest wiadomość. | „42” |
sender | Nadawca wiadomości. | |
sender.name | Nazwa nadawcy. | „Alicja” |
sender.url | Opcjonalny. Adres URL prowadzący do osoby w aplikacji. | „http://example.net/profiles/alicja” |
sender.image | Opcjonalny. Obraz nadawcy. Można użyć adresu URL strony internetowej lub identyfikatora URI treści. | „http://example.net/alicja.jpg” |
sender.email | Opcjonalny. Adres e-mail nadawcy. | „alicja@example.net” |
sender.telephone | Opcjonalny. Numer telefonu nadawcy. | „+16502530000” |
sender.isSelf | Wskazanie, czy użytkownik jest nadawcą. Wartość domyślna to fałsz. | FAŁSZ |
recipient | Jeden lub wielu odbiorców wiadomości. | |
recipient.name | Imię odbiorcy. | "Pion" |
recipient.url | Opcjonalny. Adres URL prowadzący do osoby w aplikacji. | „http://example.net/profiles/bob” |
recipient.image | Opcjonalny. Obraz odbiorcy. Można użyć adresu URL strony internetowej lub identyfikatora URI treści. | „http://example.net/bob.jpg” |
recipient.email | Opcjonalny. Adres e-mail nadawcy. | „bob@example.net” |
recipient.telephone | Opcjonalny. Numer telefonu nadawcy. | „+16502530000” |
recipient.isSelf | Wskazanie, czy użytkownik jest odbiorcą. Wartość domyślna to fałsz. | PRAWDA |
messageAttachment | Opcjonalny. Jeden lub wiele załączników do wiadomości. | |
messageAttachment.name | Nazwa załącznika do wiadomości. | "Naklejka" |
messageAttachment.image | Obraz przedstawiający załącznik. Można użyć adresu URL strony internetowej lub identyfikatora URI treści. | „http://example.net/stickers/23.png” |
Przykład: wiadomość przychodząca
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();
W przypadku wiadomości e-mail użyj zamiast tego Indexables.emailMessageBuilder()
. Nie ma różnicy w obsługiwanych polach, ale interfejs wyników będzie inny (np. podświetlenie tematu wiadomości e-mail).
Notatka
Oto przegląd najważniejszych właściwości, jakie powinna określić aplikacja podczas indeksowania notatki.
Nieruchomość | Opis | Przykład |
---|---|---|
url | Adres URL prowadzący do notatki w aplikacji. | „mojaaplikacja://notatki/42” |
name | Tytuł notatki lub bezpośrednio sam tekst notatki, jeśli nie ma ona osobnego tytułu. | "Lista zakupów" |
text | Opcjonalny. Tekst notatki, jeśli dotyczy. W przypadku notatek bez osobnego tytułu użyj „nazwy” (patrz wyżej). | "stek, makaron, wino" |
image | Obraz przedstawiający notatkę. Można użyć adresu URL strony internetowej lub identyfikatora URI treści. | „http://example.net/zakupy.jpg” |
dateCreated | Czas utworzenia notatki. | nowa data (2016, 6, 2, 23, 43, 00) |
author | Opcjonalny. Autor notatki. | |
author.name | Nazwisko autora notatki. | "Pion" |
Przykład: Uwaga
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();