android – 检查应用程序是否首次运行

参见英文答案 > Determine if android app is the first time used                                    14个
我是Android开发新手,我想在安装后首先根据应用程序设置一些应用程序的属性.有没有办法找到应用程序第一次运行,然后设置其第一个运行属性?
最佳答案
以下是使用SharedPreferences实现“首次运行”检查的示例.

public class MyActivity extends Activity {

    SharedPreferences prefs = null;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // Perhaps set content view here

        prefs = getSharedPreferences("com.mycompany.myAppName", MODE_PRIVATE);
    }

    @Override
    protected void onResume() {
        super.onResume();

        if (prefs.getBoolean("firstrun", true)) {
            // Do first run stuff here then set 'firstrun' as false
            // using the following line to edit/commit prefs
            prefs.edit().putBoolean("firstrun", false).commit();
        }
    }
}

当代码运行prefs.getBoolean(…)时,如果没有使用键“firstrun”保存在SharedPreferences中的布尔值,那么表明应用程序从未运行过(因为没有任何东西保存过带有该键的布尔值或者用户已清除应用程序数据以强制执行“首次运行”方案.如果这不是第一次运行那么行prefs.edit().putBoolean(“firstrun”,false).commit();将被执行,因此prefs.getBoolean(“firstrun”,true)实际上将返回false,因为它会覆盖作为第二个参数提供的默认值true.

转载注明原文:android – 检查应用程序是否首次运行 - 代码日志