Pular para o conteúdo principal

Novo vídeo: Eventos customizados para analytics de erros na Unity

· Leitura de 2 minutos

Sabe quando um jogador te diz um erro aconteceu com ele, mas você não consegue reproduzir por que não tem informação do que o jogo está fazendo naquele momento? Não seria ainda melhor ver este error sem ter que esperar um jogador reclamar dele? Neste video vou mostrar como utilizar o Unity Analytics para eventos customizados e como podemos pegar um erro que está acontecendo no jogo e enviar para o analytics.

Neste vídeo explico como capturar mensagens que são enviadas para o console da Unity, como filtrar para pegar apenas os tipo de log desejado, e como enviar isso para o Unity Analytics utilizando Custom Event. Utilizei o analytics da Unity por que ele já está na próxima engine e não precisa ser importado no projeto, é necessária apenas uma configuração bem simples também mostrada no vídeo.

O código abaixo é praticamente tudo que é necessário para enviar erros customizados para o analytics da Unity, e precisa apenas ser adicionado a um GameObject em uma scene. Apesar do exemplo ser com o serviço da Unity, qualquer outro analytics pode ser utilizado, e o que mudaria no código abaixo é apenas método HandleError.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Analytics;

public class AnalyticsManager : MonoBehaviour
{
private void Awake()
{
Application.logMessageReceived += DelegateLog;
}

private void OnDestroy()
{
Application.logMessageReceived -= DelegateLog;
}

private void DelegateLog(string message, string StackTraceLogType, LogType type)
{
if(type == LogType.Error)
{
HandleError(message);
}
}

private void HandleError(string message)
{
Dictionary<string, object> extras = new Dictionary<string, object>();
extras.Add("message", message);

Analytics.CustomEvent("game_error", extras);
}
}

Este é apenas meu segundo vídeo e espero que tenha sido útil pra você, e se não ainda viu assita o prímero vídeo sobre como utlizar o profiler da Unity. Qualquer dúvida, sugestão ou crítica deixe um comentário aqui no post ou no vídeo, quero ouvir feedbacks pra poder gravar vídeos melhores.