SharedPreferences

1.Android中主要提供了三种方法用于得到 SharedPreferences 对象。

1. Context 类中的 getSharedPreferences()方法:

此方法接收两个参数,第一个参数用于指定 SharedPreferences 文件的名称,如果指定的文件不存在则会创建一个,第二个参数用于指定操作模式

2. Activity 类中的 getPreferences()方法:

这个方法和 Context 中的 getSharedPreferences()方法很相似,不过它只接收一个操作模式参数,因为使用这个方法时会自动将当前活动的类名作为 SharedPreferences 的文件名。

3. PreferenceManager 类中的 getDefaultSharedPreferences()方法:

这是一个静态方法,它接收一个 Context 参数,并自动使用当前应用程序的包名作为前缀来命名 SharedPreferences 文件。

2.SharedPreferences的使用

1)写入数据:

//步骤1:创建一个SharedPreferences对象

SharedPreferences sharedPreferences= getSharedPreferences("data",Context.MODE_PRIVATE);

//步骤2: 实例化SharedPreferences.Editor对象

SharedPreferences.Editor editor = sharedPreferences.edit();

//步骤3:将获取过来的值放入文件

editor.putString("name", “Tom”);

editor.putInt("age", 28);

editor.putBoolean("marrid",false);

//步骤4:提交

editor.commit();

2)读取数据:

SharedPreferences sharedPreferences= getSharedPreferences("data", Context .MODE_PRIVATE);

String userId=sharedPreferences.getString("name","");

3)删除指定数据

editor.remove("name");

editor.commit();

4)清空数据

editor.clear();

editor.commit();

注意:如果在 Fragment 中使用SharedPreferences 时,需要放在onAttach(Activity activity)里面进行SharedPreferences的初始化,否则会报空指针 即 getActivity()会可能返回null !

GreenDao

1.使用:添加依赖、在build.gradle配置greendao信息

2.创建实体类

@Entity

表明这个实体类会在数据库中生成一个与之相对应的表

@Id

对应数据表中的 Id 字段

3.点击 Make Project(或者 Make Moudle ‘App’) 编译工程,会自动在配置的目录下生成daoseesion等。

SQLite使用

SQLite是一款轻型的数据库,嵌入式

1、打开或者创建数据库

db=SQLiteDatabase.openOrCreateDatabase("/data/data/com.lingdududu.db/databases/stu.db",null);

openOrCreateDatabase(String  path,SQLiteDatabae.CursorFactory  factory)打开或者创建一个数据库。它会自动去检测是否存在这个数据库,如果存在则打开,不存在则创建一个数据库;创建成功则返回一个SQLiteDatabase对象,否则抛出异常FileNotFoundException

2、创建表String stu_table="createtableusertable(_idintegerprimarykeyautoincrement,snametext,snumbertext)";

3、插入数据SQLiteDatabase的insert(String table,String nullColumnHack,ContentValues  values)

4、删除数据①调用SQLiteDatabase的delete(String table,String whereClause,String[]  whereArgs)方法

5、修改数据①调用SQLiteDatabase的update(String table,ContentValues values,String  whereClause, String[]  whereArgs)方法

6、查询数据SQLiteDatabase.query()方法时,会得到一个Cursor对象

public  Cursor query(String table,String[] columns,String selection,String[]  selectionArgs,String groupBy,String having,String

orderBy,String limit);

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐