• Android--SharedPreferences数据存储方案


            SharedPreferences是使用键值对的形式存储的,并且支持多种不同的数据类型,存的是String,取得值也是String。
            使用SharedPreferences有三种方法:
     
            1:    Context类中的getSharedPreferences()方法
                    这个方法需要两个参数,第一个参数用于指定SharedPreferences文件名称,如果指定的文件不存在则会创建一个,第二个参数用于指定操作模式,目前只有MODE_PRIVATE这一种模式可以选择,表示只有当前程序才可以对这个SharedPreferences文件进行读写。
            2:     Activity类中的getPreferences()方法
                    这个方法只接收一个参数,操作模式,使用这个方法是会自动将当前活动的类名作为SharedPreferences文件名。
            3:     PreferenceManager 类中的getDefaultSharedPreferences()方法
                      这是一个静态方法,接收context参数,并自动使用当前应用程序的包名来命名SharedPreferences文件,得到了SharedPreferences对象之后,就可以向SharedPreferences文件存储数据了。
                       分三步实现:
     
    1.   调用SharedPreFerences对象中的edit()方法来获取一个SharedPreFerences.Editor对象。
    2.  向SharedPreferences.Editor对象中添加数据,添加什么类型就能存什么类型。
    3.  调用apply()方法将数据提交,完成数据存储操作。
     
            Demo:
           
    package sd.he3.sharedpreferencestest;
    import android.content.SharedPreferences;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.widget.Button;
    public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Button button = findViewById(R.id.button_view);
    button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    SharedPreferences.Editor editor = getSharedPreferences("HelloWorld",MODE_PRIVATE).edit();
    editor.putString("H","HelloWorld");
    editor.apply();
    }
    });
    Button button1 = findViewById(R.id.button_2);
    button1.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    SharedPreferences sharedPreferences = getSharedPreferences("HelloWorld",MODE_PRIVATE);
    String H = sharedPreferences.getString("H","");
    Log.d("H++++++++++>>>>>>>>>>>>", H);
    }
    });
    }
    }
     
    控制台打印:D/H++++++++++>>>>>>>>>>>>: HelloWorld
     
     
     
     
     
     
     
  • 相关阅读:
    [KB] Office序列号移除器
    收音机的记忆
    EnCase v7 正式版预览
    关于Ex01和EnCase 6.19的小道消息
    EnCase V7 正式发布 新特性
    [EnCase v7专题] EX01证据文件获取设置释疑
    智能手机应用取证系列之三:腾讯微博Android手机客户端取证分析
    [EnCase v7] EnCase v7零售版改用CodeMeter加密狗
    Http Server的一个示例
    一个简单的加解密算法
  • 原文地址:https://www.cnblogs.com/yangchaojie/p/9745706.html
Copyright © 2020-2023  润新知