Dans mon Android j'ai besoin d'un endroit pour mettre l'ID de membre variable. Le problème est qu'il provient de l'API en ligne et j'ai besoin de trouver un moyen de le stocker/le récupérer
J'ai essayé de le mettre dans une classe personnalisée, mais le problème est qu'il perdra si je tue l'activité, je sais également qu'il existe un moyen d'étendre l'application.
Je voudrais donc savoir quelle est la meilleure façon de stocker une variable globale?
Je dois implémenter:
Merci
Mise à jour: Merci pour la réponse. Si je n'ai que 3 variables (données simples, par exemple un booléen, une phrase) et que j'en ai besoin après le redémarrage de l'application, dois-je simplement utiliser share pref pour les stocker? Quel en est l'inconvénient? par exemple. Sera-t-il nocif pour les performances? Merci
Vous pouvez créer la variable globale dans Android en les déclarant dans la classe qui étend la classe Application
.
Quelque chose comme ça.
class MyAppApplication extends Application {
private String mGlobalVarValue;
public String getGlobalVarValue() {
return mGlobalVarValue;
}
public void setGlobalVarValue(String str) {
mGlobalVarValue = str;
}
}
MainActivity.Java
class MainActivity extends Activity {
@Override
public void onCreate(Bundle b){
...
MyAppApplication mApp = ((MyAppApplication)getApplicationContext());
String globalVarValue = mApp.getGlobalVarValue();
...
}
}
Cela conserve la valeur jusqu'à ce que votre application ne soit pas détruite. Si vous souhaitez conserver vos valeurs enregistrées même après la destruction de votre instance d'application, vous pouvez utiliser la meilleure méthode SharedPreferences
pour ce faire.
En savoir plus sur le SharedPrefernces
à partir d'ici: http://developer.Android.com/reference/Android/content/SharedPreferences.html
Application
et la mettre là) est correcte.SharedPreferences
est probablement le plus facile à utiliser.Voir aussi cette question Stack Overflow: Quelle est la meilleure façon de partager des données entre les activités?
Vous pouvez le stocker dans un SharedPreferences , et créer une classe sharedpreferenceHelper pour le récupérer/le stocker.
Il est toujours préférable de stocker des valeurs que vous souhaitez utiliser plusieurs fois de l'une des manières suivantes: -