Porque é que as Mensagens com Muitos Emoji Podem Abrandar a Experiência da Sua Aplicação no Telemóvel

Conversas repletas de emoji podem silenciosamente reduzir a velocidade da sua aplicação. Aqui está a razão técnica e como verificar se a sua ligação é a verdadeira culpada.

Envia uma mensagem num chat de grupo. Em segundos, o tópico explode com reações, autocolantes e uma parede de emoji. Depois, a sua aplicação congela, gagueja ou demora uma eternidade a carregar o resto da conversa. Reinicia, assume que é um erro e segue em frente. Mas a explicação real é mais interessante do que uma falha de software e tem tudo a ver com a forma como os emoji funcionam internamente.

Principais Conclusões:

  • Cada emoji que não está armazenado no seu dispositivo tem de ser obtido a partir de um servidor remoto, adicionando latência a cada carregamento de mensagem.
  • Um único emoji moderno pode ser suportado por múltiplos recursos de imagem em diferentes plataformas e tamanhos de ecrã.
  • Quando dezenas de emoji desconhecidos se acumulam num único tópico, os pedidos cumulativos de ida e volta somam-se rapidamente.
  • Ligações móveis fracas ou inconsistentes amplificam significativamente o problema.
  • Executar um teste de velocidade móvel ajuda a identificar se é a sua ligação, e não a aplicação, que está a causar a lentidão.

Os Emoji Não São Apenas Caracteres de Texto

A maioria das pessoas trata os emoji como texto simples. Escreve um atalho, uma carinha sorridente amarela aparece. Tarefa concluída. Mas por trás desse pequeno gráfico, está a acontecer muito mais do que imagina.

Porque é que as Mensagens com Muitos Emoji Podem Abrandar a Experiência da Sua Aplicação no Telemóvel

Os emoji existem na intersecção de dois mundos. O primeiro é o padrão Unicode, que atribui a cada emoji um ponto de código específico, essencialmente um número de ID único. O segundo é a camada de renderização visual, e é aí que as coisas se complicam. De acordo com o padrão de caracteres Unicode, a especificação Unicode agora cobre mais de 3.600 pontos de código de emoji, e muitos deles têm múltiplas variações visuais.

O WhatsApp usa os seus próprios gráficos de emoji. O Slack usa outro conjunto. A Apple, a Google e a Microsoft mantêm bibliotecas de imagens distintas. Então, quando recebe uma mensagem repleta de emoji de um contacto num dispositivo diferente ou numa versão diferente da aplicação, o seu telemóvel pode não ter cópias locais dessas imagens exatas. Tem de as obter de um servidor de distribuição de conteúdo. Essa obtenção demora tempo. Numa ligação rápida, é impercetível. Numa ligação lenta ou congestionada, acumula-se.

O Problema da Obtenção de Recursos, Explicado

Pense na sua aplicação de mensagens como um navegador. Cada vez que carrega uma página web, o seu navegador descarrega imagens, tipos de letra e scripts. O armazenamento em cache significa que, após a primeira visita, muitos desses ficheiros são armazenados localmente para não ter de os descarregar novamente. As aplicações de mensagens funcionam da mesma forma.

Na primeira vez que encontra um emoji específico num formato específico, a sua aplicação pode precisar de obter esse recurso de um servidor. Os conjuntos de emoji modernos incluem variantes de alta resolução, diferentes tamanhos para miniaturas versus exibição em tamanho real, modificadores de tom de pele e sequências de combinação. O emoji de família, por exemplo, combina vários caracteres numa única imagem composta.

O Emojiguide.com monitoriza um vasto catálogo destes recursos, e o número impressionante de ficheiros de imagem distintos que suportam um único emoji em várias plataformas é notável. Um simples polegar para cima não é uma imagem. São potencialmente dezenas, distribuídas por tons de pele, versões de plataforma e tamanhos de ecrã. Quando um tópico contém 40 ou 50 emoji diferentes de vários remetentes, pode estar a desencadear 40 ou 50 pedidos de recursos separados em rápida sucessão.

Porque é que as Ligações Móveis Agravam a Situação

Uma ligação de banda larga com fios lida com dezenas de pequenos pedidos simultâneos sem qualquer esforço. As ligações móveis são uma história diferente. A intensidade do sinal de rede varia consoante a sua localização, o número de utilizadores próximos a partilhar a mesma torre, os materiais de construção a bloquear o sinal e o congestionamento da rede nas horas de ponta.

Cada obtenção de recurso envolve uma viagem de ida e volta. O seu telemóvel envia um pedido a um servidor, o servidor processa-o e a resposta viaja de volta. Numa ligação LTE ou 5G sólida, uma única viagem de ida e volta pode demorar 20 a 50 milissegundos. Numa ligação 3G fraca, ou num estádio lotado, pode estender-se para 300, 500 ou até 1.000 milissegundos por pedido.

Multiplique isso por 40 emoji num único tópico. Mesmo que cada pedido custe apenas 100 milissegundos extra, está a olhar para quatro segundos completos de latência adicional antes do tópico ser totalmente renderizado. Esse é o gaguejar e congelar que tem vindo a culpar a aplicação.

Como o Cache Ajuda e Onde Fica Aquém

O cache é a solução incorporada para este problema. Assim que a sua aplicação descarrega um recurso de emoji, armazena-o localmente e reutiliza-o na próxima vez que esse emoji aparecer. Se conversa regularmente com as mesmas pessoas usando os mesmos emoji, o seu cache acumula-se e a lentidão desaparece.

Os problemas surgem em algumas situações específicas:

  • Entra num novo chat de grupo com contactos desconhecidos que usam emoji que nunca encontrou antes.
  • Uma atualização da aplicação limpa o cache local, forçando um novo descarregamento de todos os recursos.
  • Muda de dispositivo ou reinstala a aplicação, começando totalmente do zero.
  • Os emoji são sequências complexas ou adições mais recentes que a sua versão atual da aplicação trata de forma diferente da versão do remetente.

Em qualquer um destes casos, o seu telemóvel volta a fazer pedidos ao vivo ao servidor para imagens que não tem armazenadas localmente. Numa ligação forte, mal notará. Numa ligação instável, a experiência degrada-se rapidamente.

Identificar o Verdadeiro Gargalo

Aqui é onde muita gente se engana. Quando a sua aplicação fica lenta durante um tópico repleto de emoji, culpam a aplicação, assumem que o servidor está em baixo ou decidem que o telemóvel está a ficar demasiado velho. Às vezes, essas explicações são válidas. Mas, frequentemente, o gargalo é simplesmente a velocidade da ligação.

A forma de descobrir é direta. Antes de culpar a aplicação, execute um teste de velocidade móvel para ver a sua velocidade real de descarregamento, velocidade de carregamento e ping em tempo real. Preste atenção especial à leitura do ping. O ping mede o tempo que um pequeno pacote de dados demora a viajar do seu telemóvel para um servidor e voltar, expresso em milissegundos. Um ping abaixo de 50ms é sólido. Acima de 150ms, começará a notar lentidão em aplicações com muitos recursos. Acima de 300ms, mesmo um tópico moderadamente denso em emoji parecerá lento.

Se o seu ping for alto ou a sua velocidade de descarregamento estiver muito abaixo do que o seu plano promete, a ligação é a culpada. Mude-se para uma área com melhor sinal, mude de dados móveis para Wi-Fi ou tente a conversa numa altura diferente do dia em que o congestionamento da rede tenha diminuído.

Diferenças entre Plataformas e o Que Significam para Si

Nem todas as aplicações de mensagens lidam com os recursos de emoji da mesma forma. Algumas são agressivas na pré-obtenção e armazenamento em cache de recursos em segundo plano. Outras carregam tudo a pedido, o que aumenta a latência em ligações mais lentas, mas poupa dados móveis.

O WhatsApp comprime os recursos de multimédia de forma bastante agressiva para manter as coisas a funcionar em ligações fracas. O Slack, concebido principalmente para uso em desktop, tende a priorizar a qualidade da imagem e carrega mais recursos por tópico. Esta é uma das razões pelas quais o Slack pode parecer visivelmente mais pesado no móvel, especialmente em canais onde as pessoas publicam reações frequentes com emoji ao longo do dia.

O Telegram situa-se algures no meio, oferecendo definições configuráveis de descarregamento de multimédia que permitem aos utilizadores decidir quanto pré-armazenar em cache. Compreender qual aplicação está a usar e como ela gere os recursos ajuda a definir expectativas realistas e ajuda a decidir quando vale a pena investigar uma lentidão.

Latência de Rede e Como se Agrava

O conceito técnico no centro de tudo isto é a latência de rede, o atraso entre um pedido ser enviado e uma resposta chegar. A latência agrava-se quando múltiplos pedidos têm de ser feitos sequencialmente em vez de em paralelo. A maioria das aplicações modernas agrupa pedidos ou usa multiplexagem HTTP/2 para lidar com vários ao mesmo tempo, mas há limites. Quando dezenas de recursos precisam de ser carregados simultaneamente, mesmo as ligações multiplexadas sentem a pressão em ligações móveis de baixa largura de banda ou alta latência.

É por isso que o mesmo tópico de emoji que carrega instantaneamente em casa no Wi-Fi pode parecer insuportavelmente lento num comboio ou numa cave. O conteúdo não mudou. Os recursos têm o mesmo tamanho. A única variável é a qualidade da ligação, e essa única variável pode significar a diferença entre uma experiência suave e um ecrã congelado.

O Que Pode Fazer Agora Mesmo

Não tem de aceitar uma experiência de aplicação lenta. Alguns ajustes práticos fazem uma diferença notável:

  • Mude para Wi-Fi sempre que possível para chats de grupo com muitos emoji, especialmente em tópicos grandes.
  • Verifique as barras de sinal antes de concluir que a aplicação está avariada.
  • Limpe o cache da sua aplicação periodicamente para remover recursos obsoletos ou corrompidos e depois deixe-o reconstruir numa ligação forte.
  • Reduza as definições de descarregamento automático de multimédia em aplicações como o WhatsApp e o Telegram se estiver frequentemente em áreas de sinal fraco.
  • Atualize as suas aplicações de mensagens regularmente, uma vez que as versões mais recentes geralmente incluem lógica de cache melhorada e bibliotecas de recursos mais bem comprimidas.

Porque é que o Seu Chat Fica Lento e O Que Fazer a Seguir

Da próxima vez que o seu telemóvel gaguejar ao carregar um tópico de grupo movimentado, saberá exatamente o que está a acontecer. Dezenas de pequenos ficheiros de imagem estão a ser pedidos um a um, viajando através de uma ligação que pode não ser suficientemente rápida ou estável para lidar com o volume. Nem sempre é culpa da aplicação. Muitas vezes, é a lacuna entre o que a sua ligação pode entregar e o que o tópico exige.

Essa lacuna é mensurável. Saber onde se encontra é o primeiro passo, e leva menos de um minuto a descobrir. Assim que tiver essa imagem, pode tomar decisões mais inteligentes sobre quando resolver o problema da aplicação e quando simplesmente encontrar um sinal melhor.

Ler sobre Porque é que as Mensagens com Muitos Emoji Podem Abrandar a Experiência da Sua Aplicação no Telemóvel em