Comment puis-je détecter si un utilisateur utilise mon application pour la première fois?
-
04-10-2019 - |
Question
Je voudrais savoir si l'utilisateur utilise l'application pour la première fois. J'utilise SharedPreferences
, mais je ne sais pas si je la logique droite.
Comment puis-je mettre mon isFirstLaunched
booléen true lorsque l'utilisateur premiers lancements, puis tout de suite mis à faux après le travail a été fait?
protected void onStart() {
super.onStart();
if(isFirstLaunch()){
populateDefaultQuotes();
//Save the preferences, isFirstLaunch will now be false
SharedPreferences settings = getSharedPreferences(Constants.PREFS_NAME, 0);
SharedPreferences.Editor editor = settings.edit();
editor.putBoolean("isFirstLaunch", false);
editor.commit();
}
setupUI();
checkOrientation();
restoreCache();
}
private void populateDefaultQuotes(){
System.out.println("!!!!!! FIRST TIMER !!!!!!");
}
private boolean isFirstLaunch() {
// Restore preferences
SharedPreferences settings = getSharedPreferences(Constants.PREFS_NAME, 0);
boolean isFirstLaunch = settings.getBoolean("isFirstLaunch", false);
return isFirstLaunch;
}
La solution
Remplacer l'argument false
dans getBoolean()
par true
, alors la logique s'adaptera.
boolean isFirstLaunch = settings.getBoolean("isFirstLaunch", true);
retourne true
s'il n'y a pas réglage.
Autres conseils
vous pouvez enregistrer un BroadcastReceiver pour écouter Intent.ACTION_PACKAGE_FIRST_LAUNCH
http://developer.android.com/reference/android/ contenu / Intent.html # ACTION_PACKAGE_FIRST_LAUNCH
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow