Comment enregistrer un État d’activité Android à l’aide de l’État d’instance de Sauvegarde?

Enregistrer et restaurer un état d’interface utilisateur d’activité est une partie importante de l’expérience utilisateur. Dans de tels cas, le client s’attend à ce que l’état de l’interface utilisateur continue comme auparavant, cependant, le framework démolit l’action et tout état présent dans celui-ci. Vous avez peut-être vu lors des tests que la rotation de l’écran réinitialise toutes les informations collectées auprès du client. Il en est de même lorsqu’un utilisateur appuie sur le bouton de retour par erreur. La rotation de l’écran est l’un des nombreux changements du cycle de vie d’Android qui peuvent détruire et réinitialiser l’activité et entraîner la perte de toutes les informations. Certainement pas une expérience utilisateur extraordinaire!

Afin d’enregistrer et de restaurer l’état de l’interface utilisateur, je remplace deux méthodes les plus courantes à cet effet:

 Texte alternatif

onaveinstancestate():

Afin d’enregistrer les états de l’interface utilisateur, je remplace onaveinstancestate (Bundle savedInstanceState) et enregistre toutes les données de l’interface utilisateur dans le bundle savedInstanceState.

Cette méthode est appelée avant onStop() dans les anciennes versions d’Android (jusqu’à Android 8.0) et peut être appelée après onStop() pour les versions plus récentes.

@Override
public void onaveinstancestate(Bundle savedInstanceState) {
super.onaveinstancestate(savedInstanceState);
// Enregistrer les modifications de l’état de l’interface utilisateur dans le savedInstanceState.
// Ce bundle sera transmis à OnCreate si le processus est
// tué et redémarré.
État d’installation enregistré.Il n’y a pas de lien entre les données de l’utilisateur et les données de l’utilisateur.Il est possible de créer un fichier de données.putInt(« StringKeyForInteger », 5);
savedInstanceState.putString(« StringKey », « Folio3/blog »);
// etc.
}

Le Bundle est essentiellement un moyen de stocker une carte NVP(« Paire Nom-valeur »), et elle sera transmise à onRestoreInstanceState() où vous extrairez ensuite les valeurs comme ceci:

 Texte alternatif

Cette méthode est appelée après onStart().

@Override
public void onRestoreInstanceState (Bundle savedInstanceState) {
super.onaveinstancestate(savedInstanceState);
// Restaure l’état de l’interface utilisateur à l’aide de savedInstanceState.

Var1=État de sauvegarde.Il est possible de créer une chaîne de caractères à partir de la base de données suivante :
Var2=savedInstanceState.Vous pouvez également utiliser le code de sauvegarde de l’état de l’instance de sauvegarde de l’état de l’instance de sauvegarde de l’état de l’instance de sauvegarde de l’état de l’instance de sauvegarde de l’état de l’instance de sauvegarde de l’état de l’instance de sauvegarde de l’état de l’instance de sauvegarde.getInt(« StringKeyForInteger »);
Var4=savedInstanceState.getString (« Clé de chaîne »);

}

De cette façon, vous pouvez enregistrer tous les états et autres variables de données qui pourraient être perdus lors de la rotation de l’écran ou lorsque l’activité en cours passe en arrière-plan. Enregistrer et restaurer les états de l’interface utilisateur est une bonne pratique dans le développement d’applications Android.
Remarque: Lorsqu’une activité est créée pour la première fois, il n’y aura pas de données dans le bundle d’état d’instance de sauvegarde.

Consultez ce guide si vous envisagez de lancer une application.



+