Détection de la vue
Instana propose un processus d'analyse du parcours utilisateur destiné aux développeurs d'applications mobiles afin de leur permettre de comprendre comment l'utilisateur interagit avec l'application. Cette fonctionnalité permet de détecter automatiquement le cycle de vie des fragments et des activités d'une application Android, ainsi que les contrôleurs de vue d'une application Web ( iOS app ).
Technologies prises en charge
Les applications natives pour Android et l' iOS prennent en charge la détection de l'affichage « Instana » dans les versions suivantes de l'agent :
- Instana Agent Android 6.0.15 ou version ultérieure (basé sur Gradle 7.3.3 )
- Instana iOS 1.7.0 ou version ultérieure
Activation de la détection de l'affichage dans l'agent Android
Pour activer la détection de l'affichage dans l'agent Android d' Instana, procédez comme suit :
Vous devez vous assurer que le plug-in de l'agent Android d' Instana et le SDK sont bien intégrés à votre application Android. Pour plus d'informations, voir Instructions d'agent Android.
Définissez la propriété
autoCaptureScreenNamessurtruelorsque vous appelez la méthodeInstana.setup(). Voir l'exemple suivant :class ExampleApp : Application() { override fun onCreate() { super.onCreate() val instanaConfig = InstanaConfig( key = "xxxxxx", reportingURL = "https://instana.example.com/mobile", autoCaptureScreenNames = true ) Instana.setup(this, instanaConfig) } }
Activation de la détection des vues dans l'agent iOS
Pour activer la détection de la vue dans l'agent Instana iOS, procédez comme suit :
Vous devez vous assurer que l'agent Instana iOS est bien installé dans votre application iOS. Pour plus d'informations, consultez la documentation relative à l'agent « iOS ».
Définissez la propriété
autoCaptureScreenNamessurtruelorsque vous appelez la méthodeInstana.setup(). Voir l'exemple suivant :import UIKit import InstanaAgent @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { let options = InstanaSetupOptions(autoCaptureScreenNames: true) Instana.setup( key: "xxxxxx", reportingURL: URL(string: "https://instana.example.com/mobile")!, options: options ) return true } }
Durée du rendu à l'écran
La durée de rendu de l'écran correspond au temps nécessaire pour que chaque écran devienne entièrement interactif après son chargement. Lorsque le suivi de la détection des vues est activé, cette durée est automatiquement enregistrée. Le suivi de ces performances aide les développeurs d'applications mobiles à identifier les écrans qui prennent beaucoup de temps et à optimiser les performances de rendu, ce qui améliore l'expérience utilisateur.
Durée du rendu à l'écran et parcours de navigation
Le widget « Top Views » affiche la durée de rendu de chaque vue ainsi que le nombre de fois où elle a été consultée. L'onglet « Vues » affiche également la durée de rendu de chaque vue menant à la page de synthèse interne, ce qui permet d'obtenir des informations plus détaillées.
Fiche de performance (KPI) relative à la durée de rendu à l'écran
La fiche KPI « Durée de rendu » de l'onglet « Résumé des vues » affiche la durée de rendu correspondant au 75e centile des durées de rendu nécessaires pour que cette vue devienne interactive. Cet indicateur montre que 75 % des durées de rendu sont inférieures à cette valeur au cours de la période sélectionnée.
Le 75e centile (également appelé troisième quartile) résiste aux valeurs aberrantes et reflète une tendance réaliste observée par la majorité des utilisateurs. Les affichages dont le rendu est plus lent nuisent aux performances de l'application; la carte des indicateurs clés de performance (KPI) aide les développeurs à repérer les durées de rendu plus longues, à identifier les goulots d'étranglement et à analyser les causes profondes afin d'optimiser l'expérience utilisateur.
Graphique représentant la durée de rendu à l'écran
Le graphique « Durée de rendu » de l'onglet « Résumé des vues » indique la durée de rendu, qui correspond au 75e centile des durées de rendu pour chaque vue.
- Axe des x : horodatages des balises (série chronologique)
- Axe des y : 75e centile des durées de rendu au cours de la période sélectionnée
Analyse des vues dans l'interface utilisateur d' Instana
Une fois que vous avez activé la détection d'affichage automatique pour une application, vous pouvez analyser les données d'affichage.
Pour analyser les vues dans l'interface utilisateur d' Instana, procédez comme suit :
Cliquez sur « Analytics » dans l'interface utilisateur d' Instana.
Dans la page Analyse, cliquez sur Applications mobiles > Afficher les transitions.
Filtrez votre application comme suit:
Figure 1. Vue « Analyse des transitions » de l'application mobile 
Pour afficher les détails de la vue, développez la section Vue, puis vous pouvez voir les propriétés pour décrire la vue. Voir la capture d'écran suivante:
Figure 2. Propriétés d'une vue 
Une vue contient les informations suivantes dans une application Android:
- Nom d'activité: nom d'écran d'une activité.
- Nom de classe d'activité: nom de classe simple d'une activité.
- Chemin d'accès local à l'activité: nom de classe d'une activité avec chemin d'accès local.
- Heure de reprise de l'activité: heure requise par une activité pour commencer à interagir avec un utilisateur.
- Nom de fragment: nom d'écran d'un fragment.
- Nom de classe de fragment: nom de classe simple d'un fragment.
- Chemin d'accès local au fragment: nom de classe d'un fragment avec chemin d'accès local.
- Temps de reprise du fragment: temps nécessaire à un fragment pour commencer à interagir avec un utilisateur.
- Liste des fragments actifs: liste des fragments actifs dans la vue en cours.
Une vue contient les informations suivantes dans une iOS app:
- Libellé d'accessibilité: libellé succinct dans une chaîne localisée qui identifie l'élément d'accessibilité.
- Titre de l'élément de navigation: titre de l'élément de navigation affiché dans la barre de navigation.
- Nom de classe: nom de la classe du contrôleur de vues.