Sobes.tech
Middle

Que fatores você acha que podem causar lentidão na aplicação?

sobes.tech IA

Resposta da IA

Fatores principais que causam lentidão numa aplicação Android:

  • Carga no thread principal (UI Thread):
    • Operações prolongadas de entrada/saída (trabalho com ficheiros, rede, base de dados).
    • Cálculos complexos.
    • Chamadas bloqueantes.
    • Quantidade excessiva ou complexidade de Views e Layout durante a renderização.
  • Gestão ineficiente da memória:
    • Fugas de memória (Memory leaks), levando a um aumento constante do consumo de memória e a recolhas de lixo (GC) frequentes.
    • Atribuição excessiva de objetos.
    • Carregar grandes volumes de dados na memória (por exemplo, imagens de tamanho completo).
  • Gestão de imagens não otimizada:
    • Carregar imagens de alta resolução sem escalá-las para o tamanho alvo do View.
    • Uso incorreto de cache de imagens.
  • Atividade excessiva em segundo plano:
    • Sincronizações frequentes em segundo plano sem necessidade.
    • Requisições constantes de localização ou outros sensores sem otimização.
    • Wakelocks que impedem o dispositivo de entrar em modo de suspensão.
  • Uso incorreto de recursos:
    • Criar novos objetos onde possam ser reutilizados (por exemplo, ViewHolder no RecyclerView).
    • Criação e destruição frequente de recursos pesados.
  • Problemas de rede:
    • Grandes volumes de dados transmitidos.
    • Requisições de rede frequentes.
    • Chamadas de rede bloqueantes no thread principal.
  • Base de dados não otimizada:
    • Consultas complexas e lentas.
    • Ausência de índices.
    • Leitura de grandes quantidades de dados de uma só vez.

Para identificar esses problemas, pode-se usar:

  • Android Profiler (CPU, Memória, Rede, Energia).
  • StrictMode.
  • Logcat.
  • Memory Analyzer Tool (MAT).
  • Verificações com Lint.