Este documento mostra a progressão ideal de um app de mensagens, desde um ponto de partida provável até a melhor opção da categoria. Ele foi criado para ajudar você a pensar em como escalonar seu app ao longo do tempo e quais recursos implementar e quando. Embora cada app de mídia seja diferente, considere estas recomendações para criar um app de alta qualidade.
App de mensagens básico
Um app de mensagens básico oferece aos usuários uma experiência de comunicação fundamental baseada em texto, que pode incluir:
Suporte a mensagens off-line
Garanta que as mensagens possam ser enfileiradas quando estiverem off-line, com estratégias para armazenamento em cache e tentativas de repetição locais. As dicas da interface do usuário, como indicadores de "enviando…" ou "falha ao enviar", ajudam a gerenciar as expectativas do usuário.Tratamento de erros
Ofereça feedback claro e informativo para diferentes cenários de falha, como problemas de rede ou destinatários bloqueados. Inclua etapas ou explicações práticas para reduzir a frustração do usuário.Notificações
Envia notificações quando as mensagens são recebidas em segundo plano.Firebase Cloud Messaging (FCM)
Use o Firebase Cloud Messaging para notificar o app sobre novas mensagens.Verificação ortográfica
Implemente e acesse a verificação ortográfica no seu app.Acessibilidade
Siga as diretrizes do Material Design para projetar e desenvolver seu app para acessibilidade.Compartilhado
Melhor app de mensagens
Um app de mensagens melhor oferece aos usuários mais ferramentas para aprimorar a comunicação e se expressar, incluindo:
Emoji
Suporte para emojis modernos.Notificações push com intent
Use payloads com o Firebase Cloud Messaging (FCM) para direcionar os usuários a conversas ou seções específicas do app na notificação. Isso reduz as etapas que os usuários precisam seguir para acessar conteúdo importante. ()Conversas agrupadas
Implemente respostas a mensagens específicas em grupos de chat para manter o contexto e o fluxo das conversas. Esse recurso é crucial para manter as comunicações em grupo organizadas e compreensíveis.Teclados de imagens, arrastar e soltar e outros conteúdos avançados
Receba conteúdo avançado, como imagens, vídeos e arquivos de áudio. A API inclui suporte para teclados de imagens e para ser um destino de arrastar e soltar para facilitar a adição de adesivos, animações e outras mídias às mensagens dos usuários. Além disso, verifique se o app funciona como uma fonte de arrastar e soltar para compartilhar conteúdo com outros apps.Pesquisar em conversas
Ative a pesquisa de texto completo em conversas para que os usuários possam encontrar rapidamente mensagens, imagens, links e arquivos. Suporte à filtragem por data, pessoa ou tipo de conteúdo para uma pesquisa eficiente.Suporte a mídia e arquivos
Integre o suporte perfeito para enviar e receber imagens, vídeos, documentos e outros arquivos com prévias inline e indicadores claros para status de download e upload.Notificações
- Aguarde para mostrar a permissão de notificação até que o usuário esteja familiarizado com o app. Acione a permissão com base em uma ação do usuário, se possível.
- Ofereça suporte a selos de notificação.
- Ofereça suporte a respostas diretas em notificações.
- Use os canais de notificação com cuidado, incluindo um nível de importância personalizado e comportamentos de notificação para canais de notificação.
- Suporte a notificações de conversa com atalhos de longa duração para que os usuários possam adicionar pessoas e atalhos de grupo às telas iniciais.
Firebase Cloud Messaging (FCM) avançado
Use recursos avançados do Firebase Cloud Messaging, como payloads de dados, para minimizar a latência e as viagens de ida e volta caras do servidor.Confirmações de leitura
Ofereça aos usuários a opção de gerenciar a visibilidade das confirmações de leitura. Isso pode ser uma simples alternância nas configurações, permitindo que os usuários escolham a privacidade em vez do reconhecimento.
Melhor app de mensagens
O melhor app de mensagens se baseia nas recomendações anteriores para criar uma experiência perfeita em vários dispositivos para os usuários, além de recursos expressivos mais avançados, incluindo:
Seletor de emojis
Compatível com o seletor de emojis.Login simplificado
Invista em uma identidade integrada em várias plataformas usando o CredentialManager com chaves de acesso ou login federado.Criptografia de ponta a ponta
Implemente protocolos de criptografia padrão do setor para garantir que as mensagens estejam protegidas e só possam ser lidas pelo destinatário pretendido.Adicionar e editar conteúdo avançado
Adicione e edite conteúdo avançado nas visualizações de texto ao compartilhar.Sincronização entre dispositivos
Permita que os usuários acessem as conversas de forma coesa em vários dispositivos, garantindo que a experiência de comunicação seja integrada, seja no smartphone, tablet ou computador.Confira o codelab para criar um app de chat com o Firebase Realtime Database.
Reações a mensagens
Permita que os usuários reajam a mensagens com emojis ou gráficos personalizados, oferecendo uma maneira rápida e divertida de responder sem digitar uma mensagem.Edição e exclusão de mensagens
Dê aos usuários controle sobre as mensagens depois do envio, incluindo edição e exclusão dentro de um período especificado.Notificações personalizáveis
Ofereça opções detalhadas de personalização para notificações, incluindo sons, padrões de vibração e cores de LED, por conversa ou por contato. Confira Criar um layout de notificação personalizado.Balões de conversa
Compatibilidade com balões para conversas.Destinos de compartilhamento direto
Forneça destinos de compartilhamento direto para permitir que os usuários compartilhem diretamente com contatos no seu app.Anime o teclado de software
Controle e anime o teclado de software para dar um toque especial.Chat por voz e vídeo
Incorpore recursos de comunicação por voz e vídeo de alta qualidade em tempo real. A Biblioteca Telecom do Jetpack inclui recursos úteis, como suporte dedicado a serviços em primeiro plano, roteamento de áudio e recursos entre dispositivos, como smartphones, relógios, carros e muito mais. Já tecnologias como o WebRTC podem fornecer conectividade ponto a ponto.App para Wear OS
Crie um app para Wear OS para ajudar as pessoas a manter a conexão usando o smartwatch.