Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Lorsque vous exécutez une application canevas dans l’application mobile Power Apps, elle peut être redémarrée pour les raisons suivantes :
- L’application utilise trop de mémoire totale.
- L’application utilise trop de mémoire ou de traitement en même temps.
- L’application est déplacée vers l’arrière-plan : lorsque votre application spécifique utilise un contrôle natif (comme Add Picture ou Barcode Scanner) ou que l’application mobile Power Apps est placée en arrière-plan par l’utilisateur.
Cette mémoire et cette limitation de traitement, particulièrement strictes lorsque l’application mobile Power Apps s’exécute en arrière-plan, est imposée par le système d’exploitation (Android ou iOS). Si l’application utilise plus de ressources que celles disponibles sur votre appareil, l’application se réinitialisera. Cela est similaire au moment où vous visitez une page web complexe volumineuse, le navigateur web suspend la page s’il consomme trop de puissance.
Sur les appareils Android, ce redémarrage de l’application peut ressembler à un blocage car l’application est fermée et l’utilisateur est dirigé vers l’écran d’accueil de l’appareil.
Utilisez cet article pour apprendre à empêcher les redémarrages de l’application canevas sur Power Apps mobile.
Conseils de prévention pour les utilisateurs finaux
Bien que les améliorations les plus importantes soient apportées par les fabricants d’applications, voici quelques conseils que les utilisateurs finaux peuvent utiliser pour réduire l’occurrence des redémarrages d’application :
- Dans l’application mobile Power Apps, dans la page de profil utilisateur, sélectionnez Cache Clear pour supprimer les données enregistrées. Cette opération ne doit être effectuée que lorsque l’utilisateur final a des données, car l’effacement du cache supprime les caches SaveData ou d’application.
- Sur les appareils Android, vérifiez que l’application mobile Power Apps est hiérarchisée. Reportez-vous au manuel de votre appareil pour que l’application continue de fonctionner via les paramètres tels que l’optimisation de la batterie et la configuration de la veille de l’application.
- Fermez les applications en cours d’exécution, autres que l’application mobile Power Apps, puis supprimez toutes les données inutiles de l’appareil, telles que les applications ou les images inutilisées.
- Bien qu’il soit fastidieux, envisagez d’utiliser l’application plus lente : pausez légèrement entre la navigation à l’écran ou après avoir pris des photos ou enregistré ou chargé des données.
Conseils de prévention pour les créateurs d’applications
Les créateurs d’applications sont les mieux placés pour améliorer la mémoire et réduire les redémarrages des applications. Lorsque vous créez une application, n’oubliez pas de l’optimiser pour qu’elle fonctionne sur l’appareil présentant les spécifications les plus basses que vos utilisateurs finaux utiliseront et suivez les bonnes pratiques en matière d’utilisation des ressources.
Note
Étant donné que les redémarrages d’applications sont causés par le système d’exploitation qui limite la quantité de mémoire et de traitement qu’une application peut utiliser, il peut être nécessaire de combiner les mesures d’atténuation suggérées ci-dessous pour minimiser les redémarrages d’applications. Plus la mémoire et le traitement peuvent être réduits, à la fois au total et en une seule fois, moins l’application est susceptible de redémarrer.
Astuce
Vous pouvez connecter une session d’application mobile au Moniteur pour déterminer où votre application effectue des traitements lourds ou des opérations gourmandes en mémoire. Monitor est un outil qui offre aux créateurs une vue approfondie de ce que fait une application et comment elle le fait en enregistrant toutes les activités clés qui se produisent dans l’application pendant son exécution.
| Problème | Origine | Correction |
|---|---|---|
| L’application redémarre lors du chargement d’un écran spécifique. | Si un écran spécifique exécute trop de formules en même temps, l’application peut avoir une charge de traitement trop importante et être redémarrée par le système d’exploitation. | Limitez le nombre de contrôles sur un écran et le nombre de formules exécutées lors du chargement de l’écran, ce qui peut nécessiter de diviser les écrans. Évitez la dépendance des contrôles entre les écrans. Empêchez l’utilisateur de prendre des mesures pendant les moments de forte activité. Par exemple, lors du chargement d’une grande galerie avec plusieurs filtres et recherches. Envisagez d’utiliser des formules nommées. Envisagez d’utiliser le réglage de l’application Chargement différé. |
| L’application redémarre après plusieurs navigations à l’écran. | Des fuites de mémoire se produisent sur les écrans, ce qui entraîne une augmentation de l’utilisation de la mémoire lorsque l’utilisateur navigue dans l’application. | Activez le paramètre de l’application Conserver en mémoire les écrans visités récemment . Bien que cela augmente l’utilisation totale de la mémoire à court terme, car l’écran est conservé en mémoire, cela empêche les fuites de mémoire à travers plusieurs navigations d'écran. |
| L’application redémarre en mode hors connexion à l’aide de la méthode SaveData/LoadData | Les scénarios hors connexion qui utilisent SaveData/LoadData ou des connexions de données volumineuses peuvent consommer une mémoire importante, en particulier lorsque le contenu multimédia est impliqué. | Utilisez la nouvelle fonctionnalité de profils hors connexion pour gérer les données hors connexion plus efficacement. Évitez d’enregistrer des fichiers multimédias volumineux localement. Optimisez les stratégies de synchronisation des données et utilisez la sélection de colonnes explicite pour réduire la taille de la charge utile. Désactivez les fonctionnalités expérimentales telles que les relations de portée d'enregistrement un à plusieurs si vous n'en avez pas besoin. |
| L’application redémarre lorsqu’on utilise le contrôle Caméra. | Le contrôle Caméra enregistre l’image capturée dans la mémoire. Cela peut augmenter l’utilisation de la mémoire de l’application, surtout si l’image capturée est enregistrée dans des variables ou dans SaveData à l’aide de la propriété OnStream. | N’enregistrez aucune image au-delà de la dernière capture. Utilisez Photo au lieu de Flux pour capturer des images uniquement lorsque l’utilisateur appuie sur la caméra. Si vous devez utiliser Flux, définissez la propriété StreamRate à une valeur aussi élevée que possible pour réduire le nombre de mises à jour. |
| L’application redémarre lorsqu’on utilise le contrôle Ajouter une image. | Le contrôle Ajouter une image enregistre le contenu multimédia sélectionné dans la mémoire. En raison de la taille du contenu multimédia, cela peut entraîner une pression importante sur la mémoire. | Envisagez de changer l’endroit où le contenu des médias est capturé. Envisagez de désactiver la propriété UseMobileCamera pour que les utilisateurs puissent uniquement sélectionner des médias dans la galerie/photothèque. Envisagez d’utiliser le contrôle Attachment (dans le cadre d’un formulaire) pour sélectionner uniquement les fichiers au lieu de les capturer à l’aide du contrôle Caméra. Envisagez de basculer vers le contrôle Caméra. |
| L’application redémarre lors de l’utilisation de contrôles natifs tels que Ajouter une image, Scanneur de codes-barres/Reader, Afficher en RM, Caméra de mesure et d’autres. | Les contrôles natifs peuvent placer l’application en arrière-plan, là où le système d’exploitation présente des limitations plus strictes en matière de mémoire, avant de redémarrer l’application. | Avant d’utiliser ces contrôles, assurez-vous que toutes les opérations gourmandes en mémoire et en traitement sont terminées. Par exemple, désactivez le contrôle Ajouter une image jusqu’à ce que toutes les opérations SaveData se terminent. Envisagez de passer à un contrôle différent comme Caméra au lieu de Ajouter une image. |
| Les redémarrages d’applications se produisent pour un sous-ensemble d’appareils. | Les appareils disposent de différentes quantités de mémoire et de traitement. Par exemple, les appareils plus anciens sont plus sujets aux redémarrages d’applications en raison de leur faible capacité de traitement. L’exécution d’autres applications peut également réduire la quantité de traitement disponible. De même, les autres applications installées et les nombreuses photos/médias enregistrés sur l’appareil peuvent consommer de la mémoire, réduisant ainsi la quantité disponible pour l’application. |
Reportez-vous aux conseils répertoriés précédemment dans notre section Conseils de prévention pour les utilisateurs finaux . Pensez à investir dans des appareils qui répondent aux besoins de performance de votre application. |
| Les redémarrages d’applications continuent à se produire. | L’utilisation de la mémoire est affectée par la façon dont l'application canevas est créée. Veillez à ce que votre application respecte les bonnes pratiques afin de garantir les performances, de réduire l’utilisation de la mémoire et le traitement. | Optimisez votre application en suivant les bonnes pratiques ci-dessous. |
Bonnes pratiques pour créer des applications performantes
- Créer des applications volumineuses et complexes
- Résolution des problèmes de performance des applications canevas Power Apps
- Conseils et bonnes pratiques pour améliorer les performances des applications canevas
- instructions de codage Power Apps - Optimisation du code