Je ne souhaite pas envoyer de journaux spéciaux à la console Firebase Analytics, il suffit de vérifier sur quels écrans l’utilisateur consacre le plus de temps, etc.
Lorsque j’utilisais AnalyticsTracker
, il était obligatoire de l’ajouter partout. Vous pouvez donc définir le nom spécifique de chaque écran avec le fichier Tracker.xml
.
La documentation officielle dit:
Ajoutez la dépendance de Firebase Analytics à votre fichier
build.gradle
au niveau de l'application:
compile 'com.google.firebase:firebase-core:9.2.1'
Déclarez l'objet FirebaseAnalytics en haut de votre activité:
private FirebaseAnalytics mFirebaseAnalytics;
Puis initialisez-le dans la méthode
onCreate()
:
mFirebaseAnalytics = FirebaseAnalytics.getInstance(this);
Donc, je suppose que je dois le faire dans chaque page où je veux obtenir des données, n'est-ce pas?
Pour les rapports sur écran, vous n'avez pas besoin d'appeler FirebaseAnalytics.setCurrentScreen()
dans chaque activité, car cette opération est effectuée automatiquement pour vous. Les documents officiels state:
Notez que le rapport d’écran est activé automatiquement et enregistre le nom de classe de l'activité en cours pour vous sans vous obliger à appelez cette fonction.
Vraisemblablement, pour que cela fonctionne, vous devez appeler FirebaseAnalytics.getInstance()
dans votre méthode Application subclass onCreate()
.
Non, il vous suffit de créer une variable globale dans une classe qui étend la classe d'application
public class MyApplication extends Application {
public static FirebaseAnalytics mFirebaseAnalytics;
@Override
public void onCreate() {
super.onCreate();
mFirebaseAnalytics = FirebaseAnalytics.getInstance(this);
}
}
Ensuite, vous ajoutez la ligne suivante dans votre manifeste, dans la balise Application
<application
Android:name=".MyApplication"
...
Le suivi d'écran peut maintenant être effectué avec une seule ligne
**Your ApplicationClass**
public FirebaseAnalytics mFirebaseAnalytics;
@Override
public void onCreate() {
mFirebaseAnalytics = FirebaseAnalytics.getInstance(this);
}
public FirebaseAnalytics getmFirebaseAnalytics() {
return mFirebaseAnalytics;
}
Après cela, créez une activité de base et appelez le getter FirebaseAnalytics à partir d’ici. Ensuite, utilisez .setCurrentScreen comme suit ci-dessous
**Your BaseActivity**
@Override
protected void onResume() {
FirebaseAnalytics firebaseAnalytics = ((ApplicationClass) getApplication()).getmFirebaseAnalytics();
firebaseAnalytics.setCurrentScreen(this, getClass().getSimpleName(), null);
Log.d("FAnalytics", "setCurrentScreen: " + getClass().getSimpleName());
super.onResume();
}
Ne pas oublier! Toute votre activité doit être étendue à partir de BaseActivity https://firebase.google.com/docs/analytics/screenviews
Le suivi automatique des écrans n’est pas encore pris en charge dans Firebase Analytics, mais c’est quelque chose que nous examinons avec soin pour le moment.
Firebase suit automatiquement les activités des écrans à présent, mais vous pouvez toujours les suivre manuellement.
mFirebaseAnalytics.setCurrentScreen(this, screenName, null /* class override */);
la source: