Eventos de Firebase con Ionic Cordova

  • por Nicolás Cofré

Una problemática que surge en el desarrollo de aplicaciones es la mejora continua de las mismas tomando en cuenta la información y acciones realizadas por los usuarios. Para suerte nuestra, existe una gran herramienta de Google llamada Firebase.

Firebase nos puede ayudar a recopilar información y estadísticas de nuestras apps. Con esta herramienta podemos obtener varios tipos de información: cuantos usuarios han instalado, iniciado, actualizado e eliminado nuestra app, cuantos son los usuarios activos por dia y mes, cuales son los países donde se ocupa y el tipo de audiencia, entre otras cosas.

 

Requisito:

  • Cuenta Google (Gmail)

 

En esta ocasión hablaremos de una herramienta en particular, los Eventos. Los Eventos en Firebase nos ayudarán a registrar información valiosa sobre lo que sucede en nuestra app. Por ejemplo, acciones de los usuarios, eventos del sistema o errores.

Para integrar estas funcionalidades con nuestro proyecto de Ionic Cordova (v1) debemos instalar el siguiente plugin: "arnesson/cordova-plugin-firebase".

 

Instalación:

ionic cordova plugin add cordova-plugin-firebase

Una vez instalado, ya podremos comenzar a registrar Eventos. En esta ocasión ocuparemos dos tipos de eventos, los cuales son indispensables al momento de obtener información del usuario.

 

logEvent:

Nos ayuda a registrar acciones del usuario con un nombre específicos y parámetros (opcionales).

window.FirebasePlugin.logEvent("name", {params1: "value1", params2: "value2"});

Ejemplo:

Crearemos un botón al cual se le haga click y registrará un evento en Firebase con el nombre "click_button".

En nuestro HTML agregamos un botón que llama a la acción "registerEvent()":

<button ng-click=”registerEvent()”>Register Event</button>

Por otro lado, en nuestro Controlador JS creamos la función "registerEvent()" la cual ejecuta una función del plugin para registrar el evento:

function registerEvent() {
  window.FirebasePlugin.logEvent("click_button", {});
}

 

Visualización:

 

setScreenName:

Nos ayuda a adjuntar información de la vista actual a los eventos y así poder ver el comportamiento por pantalla.

window.FirebasePlugin.setScreenName("Home");

Ejemplo:

En este ejemplo indicaremos que nos encontramos en la vista "Home".

En nuestro Controlador de JS llamamos a la función del plugin antes de entrar a la vista:

$scope.$on('$ionicView.beforeEnter', function() {
  window.FirebasePlugin.setScreenName("Home");
});

 

Para concluir, con esta información podremos saber cuales son las vistas más visitadas y cuál es la acción más clickeada, ente otras cosas. Además, como podemos ver, ¡con tan solo un par de líneas de código podemos registrar eventos en Firebase!

 

A considerar: Firebase no realiza el registro de los eventos inmediatamente, debido a que esta acción consumiría enormemente la batería del usuario final, por ende la visualización de estos eventos puede tardarPara más información se puede ver el dashboard de la Console de Firebase.

Para más información:

https://github.com/arnesson/cordova-plugin-firebase

https://firebase.google.com/docs/analytics/cpp/events?hl=es

 

Alternativa de plugin:

https://github.com/chemerisuk/cordova-plugin-firebase-analytics