Ajuste de desempenho do aplicativo Android - "Esquema" a ser aprimorado

ANR ocorre durante o uso do aplicativo. Este é um fenômeno doloroso. O aplicativo congela, tela preta aparece, etc.

1. Direção de otimização

insira a descrição da imagem aqui

  • A direção é o objetivo: rápido, estável, econômico e pequeno.
  • Os principais problemas a serem resolvidos: travamento, uso excessivo de memória, baixa qualidade de código, lógica de código confusa e pacote de instalação muito grande, esses são os problemas mais comuns encontrados durante o processo de desenvolvimento.
  • análise de ideia
     1、
    

2. Implemente a otimização

1. Vá para Caton

insira a descrição da imagem aqui

- Congelamento da interface do usuário

- razão

```
-----主要以下两点-----
 - 1、绘制任务太重,绘制一帧内容耗时太长
 - 2、主线程太忙, 主线程做了太多的事情,或有耗时动作。
 ```
  • Principais responsabilidades do thread: controle do ciclo de vida da interface, processamento de eventos do sistema, processamento de mensagens, layout da interface, desenho da interface, atualização da interface.

  • A cooperação entre o olho humano e o cérebro não consegue perceber a atualização da imagem superior a 60fps;

  • O padrão de desempenho do App é garantir o valor de 60fps, ou seja, cada quadro leva apenas 1000/60 = 16ms;

  • A interface ficará travada e não suave, porque o processamento atual da interface do usuário dessa interface excede 16ms e ocupará os próximos 16ms, de modo que 16ms * 2 sejam exibidos no mesmo quadro, que é o que vejo como "preso".

- ferramenta

Hierarchy Viewer工具  \

- Soluções

  • am start -W com.nwd.can.setting/com.nwd.can.setting.ui.MainActivity
    insira a descrição da imagem aqui

- Iniciar atraso


- Saltar preso


- Atraso de resposta


2. Mantenha-se estável

insira a descrição da imagem aqui

item problemático URL de referência
vazamento de memória, estouro de memória Pontos de conhecimento de referência

- fora da memória

Estouro de memória: (sem memória) O entendimento comum é que a memória não é suficiente, geralmente ao executar software ou jogos em grande escala, a memória exigida pelo software ou jogos excede em muito a capacidade da memória instalada em seu host , o que é chamado de estouro de memória.


- Vazamento de memória

  • Vazamento de memória: (Memory Leak) refere-se ao heap de memória que foi alocado dinamicamente no programa não é liberado ou não pode ser liberado por algum motivo, resultando em um desperdício de memória do sistema, resultando em sérias consequências como diminuir a velocidade de execução do programa e até travar o sistema.

  • As consequências do acúmulo de vazamento de memória são muito graves, não importa quanta memória, ela será ocupada mais cedo ou mais tarde.

  • Caso 1


- colidir

3. Economize energia e fluxo

insira a descrição da imagem aqui

4. Tamanho do pacote de instalação

insira a descrição da imagem aqui

Acho que você gosta

Origin blog.csdn.net/oZiJing/article/details/118577184
Recomendado
Clasificación