让我们假设我们有一个以这种方式定义的函数:
public class MyClass {
public static void RunFirstTime() {
//...
}
}
我第一次安装应用程序时,我想运行RunFirstTime()
但是在运行应用程序的任何其他时间,该功能都不应该运行。
有没有内置方法可以做到这一点?
答案 0 :(得分:4)
完成首次运行后,只需使用SharedPreferences并存储一个布尔变量。
更清楚的是,代码应该是这样的:
public static void RunFirstTime() {
SharedPreferences prefs = getPreferences(MODE_PRIVATE);
boolean firstRun = sPref.getBoolean("firstRun", true);
if(firstRun){
//Do something here
....
//Save firstRun = false in order to not repeat next time
Editor prefEdit = sPref.edit();
prefEdit.putBoolean("firstRun", false);
prefEdit.commit();
}
}
答案 1 :(得分:0)
尝试这样的代码:
public boolean isFirstRun() {
SharedPreferences sPref;
sPref = getPreferences(MODE_PRIVATE);
boolean isFirstRun = sPref.getBoolean("FirstRun", true);
Editor ed = sPref.edit();
ed.putBoolean("FirstRun", false);
ed.commit();
return isFirstRun;
}