Adesivos
Esta é uma visão geral das propriedades mais importantes a serem incluídas ao indexar adesivos ou pacotes de adesivos para integração com o Gboard. Veja o exemplo de indexação de aplicativos no Github para ver um exemplo.
Propriedade | Descrição | Exemplo |
---|---|---|
name | Nome ou palavra-chave usada para pesquisa — não exibido. | "Pacote de adesivos do Snoopy" |
url | URL com link para o adesivo ou pacote de adesivos no aplicativo. | "http://adesivo/pack/canonical/url/snoopy" |
image | O adesivo ou gráfico do pacote de adesivos. Para obter a qualidade de imagem ideal, use imagens quadradas com tamanho de 320 pixels ou 500 pixels. | "http://link/para/a/imagem/tchau" |
description | Etiqueta de acessibilidade para seu adesivo ou pacote de adesivos. | "Um pacote de adesivos do Snoopy" |
Exemplo: pacote de adesivos
// 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());
Exemplo: adesivo individual
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);
Mensagem
Esta é uma visão geral das propriedades mais importantes que devem ser especificadas por um aplicativo ao indexar uma mensagem.
Propriedade | Descrição | Exemplo |
---|---|---|
url | O URL vinculado à mensagem no aplicativo. | "meuapp://mensagens/42" |
name | A linha de assunto da mensagem, ou diretamente a própria mensagem, se não tiver uma linha de assunto separada. | "Re: almoço" |
text | Opcional. O corpo da mensagem, se aplicável. Para mensagens do tipo mensagens instantâneas sem uma linha de assunto separada, use "nome" (veja acima). | "Você está livre para almoçar?" |
dateReceived | A hora em que a mensagem foi recebida, para mensagens recebidas. | nova data (2016, 6, 2, 23, 43, 00) |
dateSent | A hora em que a mensagem foi enviada, para mensagens enviadas. | nova data (2016, 6, 2, 23, 43, 00) |
isPartOf.id | Um ID da conversa ou thread do qual a mensagem faz parte. | "42" |
sender | O remetente da mensagem. | |
sender.name | O nome do remetente. | "Alice" |
sender.url | Opcional. O URL com link para a pessoa no aplicativo. | "http://example.net/profiles/alice" |
sender.image | Opcional. Uma imagem do remetente. Pode ser usado um URL da web ou um URI de conteúdo. | "http://example.net/alice.jpg" |
sender.email | Opcional. O endereço de e-mail do remetente. | "alice@exemplo.net" |
sender.telephone | Opcional. O número de telefone do remetente. | "+16502530000" |
sender.isSelf | Indicação se o usuário é o remetente. O padrão é falso. | falso |
recipient | Um ou vários destinatários da mensagem. | |
recipient.name | O nome do destinatário. | "Prumo" |
recipient.url | Opcional. O URL com link para a pessoa no aplicativo. | "http://example.net/profiles/bob" |
recipient.image | Opcional. Uma imagem do destinatário. Pode ser usado um URL da web ou um URI de conteúdo. | "http://example.net/bob.jpg" |
recipient.email | Opcional. O endereço de e-mail do remetente. | "bob@exemplo.net" |
recipient.telephone | Opcional. O número de telefone do remetente. | "+16502530000" |
recipient.isSelf | Indicação se o usuário é o destinatário. O padrão é falso. | verdadeiro |
messageAttachment | Opcional. Um ou vários anexos da mensagem. | |
messageAttachment.name | O nome do anexo da mensagem. | "Adesivo" |
messageAttachment.image | Uma imagem que representa o anexo. Pode ser usado um URL da web ou um URI de conteúdo. | "http://example.net/stickers/23.png" |
Exemplo: mensagem recebida
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();
Para mensagens de email, use Indexables.emailMessageBuilder()
. Não há diferença nos campos suportados, mas a UI do resultado será diferente (por exemplo, destacando a linha de assunto do e-mail).
Observação
Esta é uma visão geral das propriedades mais importantes que devem ser especificadas por um aplicativo ao indexar uma nota.
Propriedade | Descrição | Exemplo |
---|---|---|
url | O URL com link para a nota no aplicativo. | "meuapp://notas/42" |
name | O título da nota, ou diretamente o próprio texto da nota, caso não possua um título separado. | "Lista de compras" |
text | Opcional. O texto da nota, se aplicável. Para notas sem título separado, use "nome" (veja acima). | "bife, macarrão, vinho" |
image | Uma imagem representando a nota. Pode ser usado um URL da web ou um URI de conteúdo. | "http://example.net/shopping.jpg" |
dateCreated | A hora de criação da nota. | nova data (2016, 6, 2, 23, 43, 00) |
author | Opcional. O autor da nota. | |
author.name | O nome do autor da nota. | "Prumo" |
Exemplo: Nota
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();