App Center Analytics (React Native)
Important
Visual Studio App Center doit être mis hors service le 31 mars 2025. Bien que vous puissiez continuer à utiliser Visual Studio App Center jusqu’à ce qu’il soit entièrement mis hors service, il existe plusieurs alternatives recommandées vers lesquelles vous pouvez envisager de migrer.
En savoir plus sur les chronologies et les alternatives de support.
App Center Analytics vous aide à comprendre le comportement des utilisateurs et l’engagement des clients pour améliorer votre application. Le Kit de développement logiciel (SDK) capture automatiquement le nombre de sessions et les propriétés de l’appareil comme le modèle, la version du système d’exploitation, etc. Vous pouvez définir vos propres événements personnalisés pour mesurer les éléments qui vous importent. Toutes les informations capturées sont disponibles dans le portail App Center pour vous permettre d’analyser les données.
Suivez la section Prise en main si vous n’avez pas encore configuré le Kit de développement logiciel (SDK) dans votre application.
Informations sur la session et l’appareil
Une fois que vous avez ajouté App Center Analytics à votre application et que le KIT de développement logiciel (SDK) est démarré, il effectue automatiquement le suivi des sessions et des propriétés de l’appareil, comme la version du système d’exploitation, le modèle, etc.
Événements personnalisés
Suivez vos propres événements personnalisés avec jusqu’à 20 propriétés pour comprendre l’interaction entre vos utilisateurs et l’application.
Une fois que vous avez démarré le Kit de développement logiciel (SDK), utilisez la trackEvent
méthode pour suivre vos événements avec des propriétés. Vous pouvez envoyer jusqu’à 200 noms d’événements distincts. En outre, il existe une limite maximale de 256 caractères par nom d’événement et de 125 caractères par nom de propriété d’événement et valeur de propriété d’événement.
// import App Center Analytics at the top of the file.
import Analytics from 'appcenter-analytics';
Analytics.trackEvent('Video clicked', { Category: 'Music', FileName: 'favorite.avi' });
Cette fonction retourne une promesse, le cas de réussite renvoie une chaîne vide et le cas d’erreur renvoie l’erreur.
Les propriétés des événements sont facultatives ; si vous souhaitez simplement suivre un événement, utilisez plutôt ceci :
Analytics.trackEvent('Video clicked');
Activer ou désactiver App Center Analytics au moment de l’exécution
Vous pouvez activer et désactiver App Center Analytics au moment de l’exécution. Si vous le désactivez, le Kit de développement logiciel (SDK) ne collecte plus d’informations d’analyse pour l’application.
await Analytics.setEnabled(false);
Cette fonction retourne une promesse qui se résout en void.
Pour réactiver App Center Analytics, utilisez la même API, mais passez true
en tant que paramètre.
await Analytics.setEnabled(true);
L’état est conservé dans le stockage de l’appareil entre les lancements d’application.
Vérifier si App Center Analytics est activé
Vous pouvez également case activée si App Center Analytics est activé ou non.
const enabled = await Analytics.isEnabled();
Cette fonction retourne une promesse qui se résout en .boolean
Attendez que JS active App Center Analytics
Si vous souhaitez collecter des informations d’analyse pour les utilisateurs de votre application, mais que vous souhaitez d’abord obtenir l’autorisation utilisateur, vous avez la possibilité de ne pas activer l’analytique au démarrage, mais d’attendre le bon moment et de l’activer en JavaScript à la place.
- Ouvrez le fichier du
ios/YourAppName/AppDelegate.m
projet et remplacez par[AppCenterReactNativeAnalytics registerWithInitiallyEnabled:false];
[AppCenterReactNativeAnalytics registerWithInitiallyEnabled:true];
. - Ouvrez le fichier du
android/app/src/main/res/values/strings.xml
projet et remplacez par<string name="appCenterAnalytics_whenToEnableAnalytics" moduleConfig="true" translatable="false">ENABLE_IN_JS</string>
<string name="appCenterAnalytics_whenToEnableAnalytics" moduleConfig="true" translatable="false">ALWAYS_SEND</string>
.
Cela signifie que pour que toutes les informations soient envoyées à App Center (même les informations de session de base), vous devez d’abord activer App Center Analytics en ajoutant la ligne de code suivante :
await Analytics.setEnabled(true);
Gérer la session de démarrage
Par défaut, l’ID de session dépend du cycle de vie de l’application. Si vous souhaitez contrôler manuellement le début d’une nouvelle session, suivez les étapes suivantes :
Notes
Faites attention à ce que chaque appel de l’API Analytics.StartSession() génère une nouvelle session. Si en mode suivi de session manuel, cette API ne sera pas appelée, alors tous les journaux d’activité d’envoi auront une valeur de session null.
Notes
Faites attention au fait qu’après le lancement d’une nouvelle application, l’ID de session sera régénéré.
Pour configurer manuellement le KIT de développement logiciel (SDK) pour le suivi de la session, vous devez utiliser les API Analytics enableManualSessionTracker
natives :
Dans iOS, appelez
[MSACAnalytics enableManualSessionTracker];
avant[AppCenterReactNative register];
dans la méthode déléguée dedidFinishLaunchingWithOptions
l’application dansAppDelegate.m
. Ajoutez@import AppCenterAnalytics
si ce fichier est manquant.Dans Android, appelez
Analytics.enableManualSessionTracker();
la méthode avantSoLoader.init
dans dansonCreate
MainApplication.java
. Ajoutez l’importationcom.microsoft.appcenter.analytics.Analytics
en cas d’absence dans ce fichier.
Vous pouvez ensuite utiliser l’API startSession
dans votre projet React Native :
Analytics.startSession();
Taille du stockage local
Par défaut, le Kit de développement logiciel (SDK) stocke jusqu’à 10 Mo de journaux d’activité dans le stockage.
Pas d’accès à Internet
Lorsqu’il n’y a pas de connectivité réseau, le Kit de développement logiciel (SDK) enregistre jusqu’à 10 Mo de journaux dans le stockage local. Une fois le stockage plein, le KIT de développement logiciel (SDK) commence à ignorer les anciens journaux pour faire de la place pour les nouveaux journaux. Une fois que l’appareil récupère l’accès à Internet, le KIT de développement logiciel (SDK) envoie des journaux dans le lot de 50 ou après toutes les 6 secondes.
Journaux d’événements de traitement par lots
Le Kit de développement logiciel (SDK) App Center charge les journaux dans un lot de 50 et si le SDK n’a pas 50 journaux à envoyer, il envoie toujours les journaux après 6 secondes. Un maximum de trois lots peuvent être envoyés en parallèle.
Logique de nouvelle tentative et de sauvegarde
Le Kit de développement logiciel (SDK) App Center prend en charge les nouvelles tentatives de sauvegarde sur les erreurs réseau récupérables. Voici la logique de nouvelle tentative :
- 3 tentatives maximum par requête.
- Chaque requête a sa propre machine d’état de nouvelle tentative.
- Tous les canaux de transmission sont désactivés (jusqu’au processus d’application suivant) après qu’une requête a épuisé toutes ses nouvelles tentatives.
Logique de back-off
- Randomisation à 50 %, première nouvelle tentative entre 5 et 10s, deuxième nouvelle tentative entre 2,5 et 5 minutes, dernière tentative entre 10 et 20 minutes.
- Si le réseau bascule de désactivé à activé (ou du wi-fi au mobile), les états de nouvelles tentatives sont réinitialisés et les demandes sont retentées immédiatement.