我试图打开数据库但是我的代码出现了错误
public class MyReceiver extends BroadcastReceiver
{
SQLiteDatabase db;
@Override
public void onReceive(Context context, Intent intent)
{
Cursor c;
db=openOrCreateDatabase("Mydb",MODE_PRIVATE,null);
c=db.rawQuery("SELECT * from mytable",null);
c.moveToFirst();
String name;
name=c.getString(0);
Toast.makeText(context, "Today is " + name, Toast.LENGTH_LONG).show();
}
}
错误:
MODE_PRIVATE can not be resolved to a variable
答案 0 :(得分:2)
使用Context.MODE_PRIVATE
从Context
类访问静态常量:
db=openOrCreateDatabase("Mydb",Context.MODE_PRIVATE,null);
<强> 建议: 强>
由于BroadcastReceiver
持续时间非常短,因此无法在onReceive
中执行长时间运行操作。所以在广播接收时使用IntentService来执行数据库操作。