Monitorando Eventos em Tempo Real com o Answers Kit

E ae beleza? Este post é mais um de uma série de posts que eu estou fazendo sobre o Fabric. Se você ainda não leu os posts anteriores, dá uma pesquisada aqui no blog. Se você já leu os anteriores, obrigado! Não perca a conta, este é o quarto. =]

No último post, eu falei a respeito do Crashlytics, o kit do Fabric que ajuda o desenvolvedor a monitorar, por meio de relatórios, as exceções disparadas em um aplicativo.  Contudo, a maioria dos leitores deve ter se perguntado: O Crashlytics serve apenas para monitorar as falhas do app? E se eu quiser monitorar o comportamento do usuário dentro do meu app? O Google Analytics faz tudo isso! Pra que eu vou usar o Fabric então!?

Calma rapaz! Não precisa se exaltar! kkkkk

É obvio que os engenheiros do Twitter levaram as características chave da concorrência durante do desenvolvimento do Fabric. Desse modo, visando dar ao desenvolvedor a possibilidade de observar como o usuário se comporta dentro do app e viabilizar um controle eficiente dos eventos disparados durante o uso, surgiu o Answers Kit.

O Answers Kit, ao ser introduzido no app, permite que o desenvolvedor tenha acesso a dados relacionados à experiência do usuário ao utilizar esse app. Esses dados são gerados a partir de eventos como clicar em um botão, executar um cadastro, logar no app ou adicionar um produto ao carrinho de compras, por exemplo. Todas as ações que o usuário realizar dentro do app, podem ser monitoradas através do Answers.

É importante ressaltar que o Answers, assim como o Crashlytics, disponibiliza os dados no formato de relatórios. Além disso, o Answers e o Crashlytics podem ser usados separadamente, porém para um monitoramento mais completo, o uso em conjunto é recomendado.

Neste post, eu irei explicar como utilizar o Answers no seu projeto Android. Para isso, em primeiro lugar, abra o plugin do Fabric no Android Studio e clique em “+New App”, como mostra a imagem abaixo.

answers novo app

Em seguida, selecione a organização no qual o novo app será inserido e clique em “next”.

 answers novo app

Quando a janela dos kits abrir, escolha o Answers.

fabric kits

Já na janela do Answers Kit, clique em “Install”.

answers kit

Como resultado, será aberta uma tela como diversos trechos de código. Para inserir o Answers no projeto, você pode copiar esses trechos nos respectivos arquivos ou clicar em “Apply” e deixar que o plugin os insira automaticamente.

instalação answers kit

Após esse procedimento, dê um rebuild no gradle e, se não ocorrer nenhum erro, execute a aplicação para que o Fabric a registre.

answers instalado

Se tudo correu bem, quando o plugin do Fabric for aberto novamente, o novo app deverá ser exibido na lista.

Gerando um Evento Exemplo

Com tudo já corretamente configurado, o próximo passo será testar se o Answers está realmente funcionando e realizar o monitoramento de algum evento disparado pelo app. Para isso, selecione o novo app na lista de apps do plugin como mostra a imagem abaixo:

projetos do fabric

Na tela de kits, selecione o Answers.

answers instalado

Como nosso objetivo é testar o Answers, na tela, como pode ser visto na imagem abaixo, existem duas opções: Track Key Metric e Track User Action. A primeira opção cria um teste no qual é monitorado o clique em um botão. Por sua vez, a segunda opção testa o acesso do usuário a um determinado conteúdo do app. Neste tutorial, os passos a seguir farão uso da primeira opção.

answers exemplo

Ao escolher a primeira opção, será exibida uma janela com os trechos de código do teste. Esses trechos devem ser inseridos na MainActivity e no seu respectivo layout. Nesse passo não é possível inserir o código no projeto automaticamente, dessa forma é necessário copiar e colar.

answers teste código 2   answers teste código 3

É importante ressaltar que o Answers monitora vários tipos de eventos e possui uma série de classes relacionadas a cada um deles. Porém, neste exemplo, criaremos um evento customizado através da classe CustomEvent. Essa classe recebe como parâmetro o nome do evento e atributos relacionados a ele por meio do método putCustomAttribute.

Com o código incorporado ao projeto, já é possível executar o app e clicar no botão, como mostra a imagem abaixo. Quando o botão for acionado, um evento será gerado e enviado ao relatório do Answers.

projeto teste answers

Quando o evento é gerado, ele pode ser visualizado no relatório presente no dashboard do Fabric na Web. Ao acessá-lo, é necessário permitir, clicando em “Yes, I want it”, o uso do Answser por um ou por todos os apps presentes na conta.

answsers relatorio 1

Após a confirmação, o relatório será carregado.

answsers relatorio 2

Quando o relatório for aberto, ele exibirá os eventos capturados no app. Em nosso caso, como o nome do evento foi “Gerar Evento”, ele pode ser visualizado na imagem abaixo. O número ocorrências dos eventos também pode ser visto no relatório.

answsers relatorio 3

Ao clicar no evento gerado, é possível visualizar um relatório com todas as estatísticas relacionadas a ele.

answsers relatorio 4

Bom, é isso. Agora que você já conhece o Crashlytics e o Answers, já é possível ter um acompanhamento extremamente eficiente e eficaz do seu app. Dessa forma, erros e eventos podem ser monitorados, avaliados e utilizados para a melhoria do seu app.

Caso você queira ver a implementação do projeto exemplo utilizado neste post, acesse: Exemplo Answers.

Tem alguma dúvida? Então deixa um comentário. =]

Deixe uma resposta