SharedPreference 未将任何数据保存到我的设备中

SharedPreference not saving any data into my device

所以,我试图保存一些小数据,例如用户的用户名(记住我的功能),而 sharedpreference 似乎没有将任何数据保存到我的 android 设备中。我想知道为什么,我的代码没有任何问题...

final Button btnLogin = (Button) findViewById(R.id.btn_Login);
        btnLogin.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {

                tvName = (EditText) findViewById(R.id.edit_mName);

                tvPassword = (EditText) findViewById(R.id.edit_mPassword);

                try {
                    if (cbRme.isChecked()) {
                        SharedPreferences prefs = getSharedPreferences(
                                PREFS_NAME, Context.MODE_PRIVATE);
                        SharedPreferences.Editor editor = prefs.edit();
                        editor.clear();
                        editor.putString("keyusername", tvName.getText()
                                .toString());
                        editor.putString("keypassword", tvPassword
                                .getText().toString());
                        editor.putBoolean("keycheckbox", true);
                        editor.commit();


                    } else {
                        SharedPreferences prefs = getSharedPreferences(
                                PREFS_NAME, Context.MODE_PRIVATE);
                        SharedPreferences.Editor editor = prefs.edit();
                        editor.clear();
                        editor.remove("keyusername");
                        editor.remove("keypassword");
                        editor.remove("keycheckbox");
                        editor.commit();
                    }
                } catch (Exception e) {
                    Toast.makeText(getBaseContext(), e.getMessage(),
                            Toast.LENGTH_LONG).show();
                }

    public void onResume() {

    SharedPreferences prefs = getSharedPreferences("project", 0);
    username = prefs.getString("keyusername", DEFAULT);
    password = prefs.getString("keypassword", DEFAULT);
    checkbox = prefs.getBoolean("keycheckbox", false);

    if ((username.equals(DEFAULT)) || checkbox == false) {
        Toast.makeText(getBaseContext(), "No data found", Toast.LENGTH_LONG)
                .show();
    } else {
        Toast.makeText(getBaseContext(), "Data is found.",
                Toast.LENGTH_LONG).show();

        setUsername();
        setCheckedBox();
    }

    super.onResume();
}

private void setUsername() {
    EditText tvName = (EditText) findViewById(R.id.edit_mName);
    tvName.setText(username);
}

private void setCheckedBox() {
    cbRme = (CheckBox) findViewById(R.id.cbRememberMe);
    cbRme.setChecked(checkbox);
}

您正在尝试在以下共享首选项中设置数据:

   SharedPreferences prefs = getSharedPreferences(
                                PREFS_NAME, Context.MODE_PRIVATE);

并尝试从以下共享首选项获取数据:

SharedPreferences prefs = getSharedPreferences("project", 0);

这似乎是 2 个不同的共享首选项

编辑:

出于安全原因,共享首选项在设备中不可见,但如果设备已获得 root 权限,您可以查看共享首选项文件。

要调试和查看共享 pref 文件,您可以使用共享 pref 可见的模拟器,并且您可以拉取和推送共享 pref 文件。