Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Importante
O Visual Studio App Center foi desativado em 31 de março de 2025, exceto para os recursos de Análise e Diagnóstico, que continuarão a ter suporte até 30 de junho de 2026. Mais informações.
ProGuard, DexGuard e R8 são ferramentas para otimizar e ofuscar o código de aplicativos Android. Ele remove código não utilizado, renomeia classes, campos e métodos com nomes semanticamente obscuros, tornando a base de código menor e mais difícil de fazer engenharia reversa. Para ativar a ofuscação com ProGuard ou R8 em seu aplicativo Android, siga a documentação oficial do desenvolvedor Android.
Com o ProGuard, DexGuard ou R8 ativado no seu aplicativo Android, os seus vestígios de pilha devem ser desofuscados. O App Center desofusca automaticamente os rastreamentos de pilha para seus aplicativos Java, Kotlin e React Native Android quando você carrega o mapping.txt arquivo criado em cada compilação. Esse arquivo mapeia a classe, o método e os nomes de campo originais para os nomes ofuscados, tornando os rastreamentos de pilha legíveis.
O serviço de compilação e distribuição do App Center pode gerar automaticamente arquivos de mapeamento e carregá-los para o serviço de diagnóstico. Se você usar o App Center para criar e distribuir automaticamente seu aplicativo para seus usuários finais, não precisará obter e carregar manualmente os arquivos de mapeamento, conforme detalhado nas etapas abaixo.
Carregando o arquivo mapping.txt
App Center Portal
- Baixe o
mapping.txtarquivo do diretório de compilação do módulo do aplicativo - Inicie sessão no App Center e selecione a sua aplicação
- No menu à esquerda, navegue até a seção Diagnóstico
- Selecionar mapeamentos
- Clique no botão Carregar mapeamentos no canto superior direito
- Preencha o Nome da Versão e o Código da Versão (estes devem corresponder à configuração Gradle dessa compilação para que o mapeamento funcione para uma compilação específica)
- Carregue o
mapping.txtarquivo do diretório de compilação do módulo do aplicativo. - Clique no botão Guardar.
App Center API
O processo de upload de arquivos de mapeamento por meio da API envolve uma série de três chamadas de API: uma para alocar espaço em nosso back-end, uma para carregar o arquivo e outra para atualizar o status do upload. O corpo da primeira chamada de API deve definir symbol_type e as propriedades AndroidProguard, build e version, que correspondem ao Código da Versão e ao Nome da Versão, respectivamente, bem como a file_name.
- Inicie uma
POSTsolicitação para a API symbol_uploads. Esta chamada aloca espaço no nosso backend para o seu ficheiro e retorna uma propriedadesymbol_upload_ide uma propriedadeupload_url.
curl -X POST 'https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/symbol_uploads' \
-H 'accept: application/json' \
-H 'X-API-Token: {API TOKEN}' \
-H 'Content-Type: application/json' \
-d '{JSON BODY}'
- Usando a
upload_urlpropriedade retornada da primeira etapa, faça umaPUTsolicitação com o cabeçalho:"x-ms-blob-type: BlockBlob"e forneça o local do arquivo no disco. Esta chamada carrega o arquivo para nossas contas de armazenamento de back-end. Saiba mais sobre cabeçalhos de solicitação de Blob PUT .
curl -X PUT '{upload_url}' \
-H 'x-ms-blob-type: BlockBlob' \
--upload-file '{path to file}'
- Faça uma
PATCHsolicitação à API symbol_uploads usando asymbol_upload_idpropriedade retornada da primeira etapa. No corpo da solicitação, especifique se deseja definir o status do carregamento comocommitted(concluído com êxito) o processo de carregamento ouaborted(concluído sem êxito).
curl -X PATCH 'https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/symbol_uploads/{symbol_upload_id}' \
-H 'accept: application/json' \
-H 'X-API-Token: {API TOKEN}' \
-H 'Content-Type: application/json' \
-d '{ "status": "committed" }'
Observação
O carregamento de símbolos na API não funciona para ficheiros maiores que 256 MB. Use a CLI do App Center para carregar esses arquivos. Você pode instalar a CLI do App Center seguindo as instruções em nosso repositório da CLI do App Center.
App Center CLI
Você também pode usar a CLI para carregar arquivos de mapeamento:
appcenter crashes upload-mappings --mapping {mapping file} --version-name {version name} --version-code {version code}
Observação
O App Center não consegue verificar se carregou o ficheiro correto mapping.txt . Recomendamos carregar o arquivo diretamente depois de criar o arquivo .apk ou enviá-lo por push para o repositório de código, se quiser carregá-lo mais tarde.
Encaminhando o mapeamento de uma compilação no App Center
Se uma compilação estiver configurada para produzir um mapping.txt arquivo, as compilações do App Center produzirão o arquivo como um download disponível. Distribuir automaticamente a compilação ou distribuí-la manualmente mais tarde encaminhará o arquivo para o mapping.txt Diagnostics para ofuscar os relatórios de falhas recebidos. Não é necessário carregar manualmente o mapping.txt arquivo depois de distribuir uma compilação.
Excluindo um arquivo de mapeamento
- Faça uma
GETsolicitação à API symbols_list. Isso recupera as IDs dos arquivos de mapeamento carregados. - Faça uma
DELETEsolicitação à API symbols_upload com o ID do ficheiro de mapeamento. Isso exclui o arquivo de mapeamento especificado.