Android应用保存数据到系统数据库(Settings.System.putString、Settings.System.putInt)

前言:在android应用开发的时候,有时候需要要保存一些变量的值,有好几种方法,这里就介绍其中一种,保存到系统数据库中。

一、数据库的位置在/data/data/com.android.providers.settings/databases/

1

二、创建数据库的实现代码在
frameworks\base\packages\SettingsProvider\src\com\android\providers\settings 的 DatabaseHelper类里面

三、读写的方法如下:

 写字符串Settings.System.putString(ContentResolver resolver, String name, String value)

 读字符串Settings.System.getString(ContentResolver resolver, String name)

 写整型Settings.System.putInt(ContentResolver resolver, String name, int value)

 读整型Settings.System.getInt(ContentResolver resolver, String name,0)

四、下面我们来实际验证一下,先往数据库里面写一个字符串和一个整型数,然后再读处理。需要注意的是需要在系统内置的apk上测试,普通的apk是没有权限去读写数据库

1、添加下面的代码:

    Context cont = this.getApplicationContext();
    Settings.System.putString(cont.getContentResolver(),"hanyue", "weifanghai520111tanghanyue");
    String msg;
    int get_int=0;
    msg=Settings.System.getString(cont.getContentResolver(),"hanyue");
        Settings.System.putInt(cont.getContentResolver(),"haiyue", 520111);
    get_int=Settings.System.getInt(cont.getContentResolver(),"haiyue",0);
    String text = String.valueOf(get_int);
    Log.i("haiyueSettings.System.getString=", msg);
    Log.i("haiyueSettings.System.getInt=", text);   

2、查看运行结果如下:

3、读处理字符串和整型更写进去的一样,说明成功了。

4、当然记得import下面的类:

import android.provider.Settings; 
import android.util.Log; 
import android.content.Context; 

转载自该处

0