lermit Posté(e) 1 novembre 2012 Share Posté(e) 1 novembre 2012 Bonjour à tous, j'ai développé un service qui lit des paramètre de préférence au démarrage et je les places dans des variables. Mon problème, c'est que le service ne prend pas en charge les changements des préférences. Quelqu'un aurait une idée pour informer le service qu'il doit aller vérifier la valeur des préférences. j'avais pensé à utiliser "registerOnSharedPreferenceChangeListener" mais quand je change des valeurs dans PreferenceActivity le listener ne se lance pas. listenerPreferences = new SharedPreferences.OnSharedPreferenceChangeListener() { public void onSharedPreferenceChanged(SharedPreferences prefs, String key) { // Implementation } }; settings.registerOnSharedPreferenceChangeListener(listenerPreferences); aussi je pourrais directement utilisé les valeurs des préférences ( prefs.getString(KEY_U, "") ) à l'emplacement ou j'ai besoin dans le code mais cette solution ne me plait pas trop. Toutes les idée sont les bien venue. merci d''avance pour votre aide; cordialement, Lermit Lien vers le commentaire Partager sur d’autres sites More sharing options...
chpil Posté(e) 6 novembre 2012 Share Posté(e) 6 novembre 2012 A priori, c'est la bonne façon de procéder. J'ai eu moi-même à le mettre en place, et la modification d'une entrée dans la PreferenceActivity est bien prise en compte automatiquement par mon service en arrière-plan. Il doit y donc y avoir quelque chose qui cloche... es-tu sûr que ton service existe toujours en arrière-plan ? as-tu bien enregistré le PreferenceChangeListener sur les mêmes SharedPreferences que celles utilisées par le PreferenceActicity ? .... ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.