我需要在初始化时为其关联的持久存储数据设置一些值(如果存在)。如果不是,我需要初始化它们。在第一次运行时使用SharedPreference初始化变量是否有任何缺点。就是这样:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
SharedPreferences sp = getSharedPreferences("MyDataName", Context.MODE_PRIVATE);
String name = sp.getString("name", "");
boolean isFirstRunning = sp.getBoolean("firstTime", true);
if (isFirstRunning) {
Toast.makeText(this, "YEA", Toast.LENGTH_LONG).show();
SharedPreferences.Editor editor = sp.edit();
editor.putBoolean("firstTime", false);
editor.commit();
}
}
如果处理级别没有缺点,就这种情况而言,是否有标准做法?另外,有没有其他方法来处理持久数据,或者我们是否必须使用SharedPreferences?
答案 0 :(得分:1)
是的,这完全可以接受。为了整洁,最好定义键,默认值为常量,但你的方法可以正常工作。
答案 1 :(得分:0)
这是基于您的要求。如果你需要快速共享偏好值,你写的好。其他明智没用。