Zenos77 Posté(e) 12 septembre 2012 Share Posté(e) 12 septembre 2012 Bonjour, je viens de commencer à utiliser ellipse/java pour android, et j'essaye depuis deja un certain temps de créer un "patch note" qui se lance au début de mon application le problème c'est qu'il se relance systématiquement à chaque lancement de l'appli, or je voudrais qu'il ne se lance qu'au premier démarrage après l'installation Du coup, j'aimerais pouvoir gérer ça avec SharedPreferences (je vois pas trop comment faire autrement avec le peu de commandes que je connais actuellement), c'est a dire entrer la valeur "1" dedans apres avoir affiché le patch note, et ne pas afficher le patch note a partir du moment ou y'a la valeur "1" dans les SharedPreferences le problème c'est que je maîtrise très mal ça syntaxe, et du coup, ça marche pas ><, j'ai essayé d'imiter sans succès un sujet un peu plus haut sur ce forum voici mon code : public class MainActivity extends Activity { String Newligne=System.getProperty("line.separator"); public static final String PREFS_NAME="MyPresFile"; Bundle myPrefs1; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); SharedPreferences myPrefs = this.getSharedPreferences(PREFS_NAME, MODE_WORLD_READABLE | MODE_APPEND); if( myPrefs1.getLong(""+2, 0)!=1){ AlertDialog alertDialog; alertDialog = new AlertDialog.Builder(this).create(); alertDialog.setTitle("Patch note"); alertDialog.setMessage("Patch notes : " + Newligne + "v1.2 :" + Newligne + "- Un compteur affiche désormais le score" + Newligne + "- Les photos prennent désormais plus de place sur l'écran" + Newligne + "- Le patchnote ne s'ouvre plus qu'au premier démarrage" + Newligne + "v1.1 :" + Newligne + "- Bug des prénoms en A corrigé" + Newligne + "- Bug lié à une photo qui était associée à deux noms corrigée" + Newligne); alertDialog.setButton("OK", new DialogInterface.onclickListener() { public void onclick(DialogInterface dialog, int which) { dialog.dismiss(); } ; }); alertDialog.show(); }; SharedPreferences.Editor prefsEditor = myPrefs.edit(); prefsEditor.putLong("2",1); SharedPreferences myPrefs1 = this.getSharedPreferences("MyPresFile", MODE_WORLD_READABLE); }; Quelqu'un saurait m'aiguiller ?? Lien vers le commentaire Partager sur d’autres sites More sharing options...
chpil Posté(e) 12 septembre 2012 Share Posté(e) 12 septembre 2012 (Utilise les balises [ code ] pour tes extraits de code, cela rendra ton post plus lisible) Pour ton problème, j'ai l'impression qu'il te manque juste un commit sur le prefsEditor. SharedPreferences.Editor prefsEditor = myPrefs.edit(); prefsEditor.putLong("2",1); prefsEditor.commit(); Et tu peux enlever la ligne qui suit (SharedPreferences myPrefs1 = ... ) qui ne sert à rien Lien vers le commentaire Partager sur d’autres sites More sharing options...
Zenos77 Posté(e) 12 septembre 2012 Auteur Share Posté(e) 12 septembre 2012 Un grand merci a toi !! ça marche impeccable maintenant ^^ le code final donne ça, si ça peut servir a quelqu'un par la suit public class MainActivity extends Activity { String Newligne=System.getProperty("line.separator"); public static final String PREFS_NAME="MyPresFile"; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); SharedPreferences myPrefs = this.getSharedPreferences(PREFS_NAME, MODE_WORLD_READABLE | MODE_APPEND); if(myPrefs.getLong(""+2, 0)!=1){ AlertDialog alertDialog; alertDialog = new AlertDialog.Builder(this).create(); alertDialog.setTitle("Patch note"); alertDialog.setMessage("Patch notes : " + Newligne + "v1.2 :" + Newligne + "- Un compteur affiche désormais le score" + Newligne + "- Les photos prennent désormais plus de place sur l'écran" + Newligne + "- Le patchnote ne s'ouvre plus qu'au premier démarrage" + Newligne + "v1.1 :" + Newligne + "- Bug des prénoms en A corrigé" + Newligne + "- Bug lié à une photo qui était associée à deux noms corrigée"); alertDialog.setButton("OK", new DialogInterface.onclickListener() { public void onclick(DialogInterface dialog, int which) { dialog.dismiss(); } ; }); alertDialog.show(); }; SharedPreferences.Editor prefsEditor = myPrefs.edit(); prefsEditor.putLong("2",1); prefsEditor.commit(); 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.