为了账号安全,请及时绑定邮箱和手机立即绑定

在BroadcastReceiver开放数据库

在BroadcastReceiver开放数据库

陪伴而非守候 2019-03-13 14:15:42
创建了一个类管理SQLite数据库,核心代码如下:public class Database extends SQLiteOpenHelper { private static final String DATABASE_NAME = "name"; private static final int DATABASE_VERSION = 1; public Database (Context ctx) {     super(ctx, DATABASE_NAME, null, DATABASE_VERSION); }然后创建了另一个类,是一个SMS监听器(extend BroadcastReceiver),然后想用下面代码在这类中创建数据库,但是没实现:db = new Database(this);报错信息如下:The constructor Database(SmsListener) is undefined怎么样能在SmsListener类中开放一个数据库连接?
查看完整描述

1 回答

?
皈依舞

TA贡献1851条经验 获得超3个赞

BroadcastReceiver中的onReceive()方法 method得到一个 Context。

@Override
public void onReceive(Context context, Intent intent){
    db = new Database(context);
    //more stuff
}

要知道在BroadcastReceiver中执行时间最多为10秒,如果超时,android就会终止Receiver。因此需要快速完成操作,如何数据库操作时间很长,就试试用单独的线程。


查看完整回答
反对 回复 2019-04-26
  • 1 回答
  • 0 关注
  • 390 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号