Android BroadcastReceiver 使用 SQLite

来源:互联网 发布:拼接控制器软件 编辑:程序博客网 时间:2024/06/11 01:39


在activity 中创建或者打开数据库可以直接用          SQLiteDatabase db = openOrCreateDatabase("DBIDATA.db", Context.MODE_PRIVATE, null);


但是在BroadcastReceiver 中,如果是设置程序开机启动等操作,则需要使用SQLiteDatabase.openOrCreateDatabase(name,null)打开数据库,

例:

SQLiteDatabase db =SQLiteDatabase.openOrCreateDatabase("/data/data/com.ninefast.italm/databases/DBIDATA.db", null);


1、BroadcastReceiver中 数据库路径必须为完整的路径,打开数据库不能用相对位置,因为它不知道是哪个程序的数据库,或者程序还没启动,读取不到该相对位置,会抛错误

2、BroadcastReceiver 运行时间为10秒左右,可以使用启动线程开启数据库,防止打开超时,



0 0