Este é o terceiro post da série sobre o Fabric. Se você ainda não leu o primeiro nem o segundo post, seria interessante lê-los antes de continuar lendo este.
Integrando o Crashlytics ao Projeto
Como mencionado no primeiro post, o Crashlytics é o kit do Fabric que tem como objetivo alertar o desenvolvedor quando ocorrem erros no aplicativo monitorado e disponibilizar uma série de relatórios a fim de facilitar a detecção e correção do problema.
Para expor e ajudar você a entender de forma prática as características do Crashlytics, este post será baseado em um projeto exemplo, no qual o Crashlytics será integrado. Caso você possua um projeto Android em desenvolvimento, fique a vontade para utilizá-lo, uma vez que os passos para a integração são os mesmos.
Integrar o Crashlytics ao seu projeto no Android Studio é bem simples e rápido. O primeiro passo é acessar o plugin do Fabric (supondo que você já tem o plugin do Fabric instalado). Quando o plugin é aberto pela primeira vez, ele exibirá uma tela contendo uma “organização” em seu nome, como mostra a imagem abaixo:
Ao clicar em “Next”, será exibida uma lista com todos os kits disponibilizados pelo plugin. Selecione o Crashlytics.
Após a seleção, como mostra a imagem a seguir, você irá notar que o plugin dá a opção para instalar o Crashlytics. Além disso, existem outras duas opções, as quais serão explicadas mais na frente. Desse modo, clique em “Install”.
Aceite os termos que serão exibidos.
Após os termos serem aceitos, o plugin mostrará uma janela contendo trechos de código. Esses trechos de código, ao serem inseridos em arquivos específicos, darão à aplicação todo o suporte necessário para a execução do Crashlytics. Ao clicar em “Apply”, os códigos serão inseridos automaticamente no seu projeto. Caso o aplicativo alvo faça uso do NDK, basta selecionar a opção “Java + NDK” no canto superior direito da janela para que sejam exibidos os trechos de código correspondentes.
Após a inserção do código, é preciso dar um build no gradle
e executar a aplicação. A execução da aplicação é necessária para que o Fabric registre-a junto ao servidor.
Se todo procedimento descrito acima foi executado sem a ocorrência de erros, os relatórios do Crashlytics já podem ser acessados tanto no plugin quanto no dashboard do site do Fabric, como mostram as imagens a seguir:
Gerando uma Exceção de Exemplo
Com o Crashlytics devidamente integrado ao projeto, já é possível capturar exceções. Dessa forma, a fim de avaliar se a aplicação está realmente sendo monitorada, o Crashlytics disponibiliza um recurso chamado de “Force a Crash”. Como o nome sugere, esse recurso insere um trecho de código que força uma exceção no aplicativo como o objetivo de testar se os erros estão sendo monitorados como esperado. Para fazer uso do “Force a Crash”, basta acessar o plugin do Fabric, selecionar o Crashlytics e clicar na opção “Get Code”. A imagem abaixo ilustra a janela onde o “Force a Crash” é exibido.
Obviamente, o desenvolvedor pode implementar seu próprio código para gerar exceções e testar o Crashlytics. O “Force a Crash” é apenas para evitar a fadiga. kkk
Supondo que o desenvolvedor escolheu utilizar o “Force a Crash” e clicou em “Get Code”, o plugin exibirá uma sequencia de telas onde o desenvolvedor pode visualizar e copiar o código responsável pela geração da exceção.
Uma vez que os trechos de código sejam inseridos da mesma forma que o apresentado pelo tutorial do próprio plugin, a janela do aplicativo ficará semelhante a da imagem abaixo:
Ao clicar no botão, a exceção é gerada e o resultado pode ser visto tanto no plugin quanto no relatório do dashboard. Além disso, como pode ser visto nas imagens a abaixo, o Crashlytics informa a linha e o método onde a exceção ocorreu.
É importante ressaltar que todos os relatórios do Crashlytics também podem ser visualizados no aplicativo do Fabric, o qual está disponível para Android e iOS.
Bom, é isso. Este post foi apenas para introduzir o uso do Crashlytics para quem ainda não o conhecia ou teve problemas para utilizá-lo. O aplicativo exemplo usado nesse post pode ser acessado no repositório do Github presente neste link: Projeto Crashlytics.
Espero que a leitura tenha sido útil e ajude na correção de muitos bugs. Em caso de dúvidas, é só deixar um comentário.