Solução de problemas do SDK do Unity

Importante

O Visual Studio App Center está programado para ser desativado em 31 de março de 2025. Embora você possa continuar a usar o Visual Studio App Center até que ele seja totalmente desativado, há várias alternativas recomendadas para as quais você pode considerar a migração.

Saiba mais sobre linhas do tempo e alternativas de suporte.

Os dados de análise não aparecem no portal

  1. Verifique se você integrou os módulos do SDK corretamente.
  2. Verifique se o projeto está incluído no objeto "App Center" com anexado AppCenterBehavior e se os segredos do aplicativo são adicionados aos campos correspondentes na janela Inspetor. Certifique-se de também marcar as caixas "Usar {service}" para cada serviço do App Center que você pretende usar.
  3. Verifique os logs que dizem "SDK do App Center configurado com êxito" (no nível de log detalhado) e, em seguida, marcar se você vir logs de solicitação HTTPS.
  4. Verifique se o dispositivo está online.
  5. Às vezes, os logs podem levar alguns minutos para serem exibidos no portal. Aguarde algum tempo se esse for o caso.
  6. Para marcar se o back-end do App Center recebeu seus dados, vá para a seção Fluxo de log no serviço de Análise. Seus eventos devem aparecer depois que forem enviados.

Falhas não aparecem no portal

  1. Verifique se você integrou os módulos do SDK corretamente.
  2. Verifique se o projeto está incluído no objeto "App Center" com anexado AppCenterBehavior e se os segredos do aplicativo são adicionados aos campos correspondentes na janela Inspetor. Certifique-se de também marcar as caixas "Usar {service}" para cada serviço do App Center que você pretende usar.
  3. Reinicie o aplicativo após uma falha. As falhas do App Center encaminharão o log de falhas somente depois que ele for reiniciado. O SDK não salvará nenhum log de falhas se você anexou um depurador. Verifique se o depurador não está anexado quando você interromper o aplicativo.
  4. Verifique os logs que dizem "SDK do App Center configurado com êxito" (no nível de log detalhado) e, em seguida, marcar se você vir logs de solicitação HTTPS.
  5. Verifique se o dispositivo está online.
  6. Às vezes, os logs podem levar alguns minutos para serem exibidos no portal. Aguarde algum tempo se esse for o caso.
  7. Se você quiser marcar se o SDK detectou a falha na próxima inicialização do aplicativo, chame a API para marcar se o aplicativo falhou na última sessão e mostrará um alerta. Ou você pode estender o retorno de chamada de falha para ver se ele foi enviado com êxito ao servidor.
  8. Para marcar se o back-end do App Center recebeu a falha, vá para a seção Fluxo de log no serviço análise. Suas falhas devem aparecer lá, depois de serem enviadas.
  9. Verifique se o aplicativo realmente falhou e reiniciou: o Unity captura a maioria das exceções sem tratamento por padrão, o que significa que o aplicativo não sai e não é considerado uma falha. Se uma falha for detectada pelo Unity, ela será relatada como "Erro" pelo SDK.

Falha na compilação do projeto android

O módulo Distribuir versão 4.1.0 ou posterior tem uma nova marca de manifesto para dar suporte ao Android 11. Se você estiver usando o Unity da versão anterior, 2019.4 especifique explicitamente a versão do gradle para evitar o erro AAPT: error: unexpected element <queries> found in <manifest>.. Para evitar problemas com a criação do projeto, você precisa adicionar mainTemplate.gradle e launcherTemplate.gradle (esse arquivo só deve ser adicionado se você usar arquivos do Unity 2019.4) para especificar explicitamente a versão do gradle. Abra a guia Configurações> do ProjetoAndroid> daguia>Configurações> de Publicaçãoe selecione Modelo de Gradle Principal Personalizado e Modelo de Gradle do Inicializador Personalizado. Depois de gerar arquivos, insira as seguintes linhas na parte superior dos arquivos:

buildscript {
    repositories {
        google()
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.4.3'
    }
}

allprojects {
   repositories {
      google()
      mavenCentral()
      flatDir {
        dirs 'libs'
      }
   }
}

Leia mais sobre o build para Android 11 com a diretriz do Unity .

Proteger o valor do segredo do App Center

O app_secret é um identificador do seu aplicativo, é necessário saber a qual aplicativo o tráfego se aplica e não pode ser usado para recuperar ou editar dados existentes. Se você app_secret estiver exposto, o maior risco será enviar dados inválidos para seu aplicativo, mas isso não terá efeito sobre a segurança dos dados.

Para recuperar dados confidenciais, você precisaria fornecer um token de aplicativo/usuário, que é gerado no lado do cliente. Não há como tornar os dados do lado do cliente completamente seguros.

Você pode melhorar a segurança do aplicativo usando uma variável de ambiente para injetar o segredo do aplicativo em seu código. Dessa forma, o segredo não está visível em seu código.