如何检测用户是否首次使用我的应用程序?
-
04-10-2019 - |
题
我想知道用户是否首次使用该应用程序。我在用 SharedPreferences
, ,但我不确定我是否有正确的逻辑。
我该如何设置我的 isFirstLaunched
当用户首次启动时,布尔值为true,然后立即设置为false工作后?
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;
}
解决方案
更换 false
参数 getBoolean()
经过 true
, ,然后逻辑适合。
boolean isFirstLaunch = settings.getBoolean("isFirstLaunch", true);
这将返回 true
如果没有这样的设置。
其他提示
您可以注册一个广播员来收听intent.action_package_first_launch
http://developer.android.com/reference/android/content/intent.html#action_package_first_launch
不隶属于 StackOverflow