Je développe une application Android et j'utilise une bibliothèque que j'ai écrite. Cette bibliothèque a une classe qui contient des champs statiques. L'un d'eux est une clé API. Cette clé est utilisée par d'autres classes de ma bibliothèque pour effectuer des appels sur un service distant.Paramètres statiques non retenus pour les activités
J'initialise la clé API sur mon activité principale une fois lors de sa création et la valeur de savedInstanceState est nulle.
Mon problème réside dans d'autres activités car ils utilisent parfois la clé API correcte lors d'appels avec ma bibliothèque et parfois non. Il semble que la clé API n'a pas été définie.
En particulier, une activité que j'appelle de mon activité de préférences échoue toujours car la clé API n'est pas définie.
Les champs statiques ne sont-ils pas maintenus dans les activités comme ils le sont pour les applications Java normales? Je pensais que pour une instance jvm spécifique, tous les champs statiques sont conservés. La plate-forme Android utilise-t-elle de nouvelles instances jvm pour les nouvelles activités?
Vous devez implémenter ceci avec une sharedPreference au lieu d'une variable globale statique – Falmarri
la bibliothèque est écrite spécifiquement pour Java. Il ne connaît pas la plate-forme sur laquelle il fonctionnera. Voulez-vous dire que les champs statiques sont volatils dans Android? –