从SQLi查询数据-无法重置Alarmmanager

时间:2018-10-28 19:10:06

标签: java android sqlite alarmmanager

像这样重启电话后,我从SQLi查询数据以放入警报管理器

Dish

重新启动后,我再次打开应用程序,它显示这样的错误。

public class AlarmReset  extends BroadcastReceiver {

    SQLiteDatabase db;
    DBHelper dbHelper;
    Cursor cursor;
    String type_number;
    String op_name;
    String sNotes;

    @Override
    public void onReceive(Context context, Intent intent) {

        AlarmUtils au = new AlarmUtils();

        if (intent.getAction().equals("android.intent.action.BOOT_COMPLETED")) {
            // Set the alarm here.


            db = dbHelper.getWritableDatabase();

            String[] queryColumns = new String[]{DBHelper.COL_DATE,DBHelper.COL_RQCODE , DBHelper.COL_VEHICLE_TYPE, DBHelper.COL_OPTION_NAME};
           cursor = db.query(DBHelper.TABLE_NAME, queryColumns, null,null,null,null,null);


                while (cursor.moveToNext()) {


                    au.setAlarm(cursor.getString(0), Integer.parseInt(cursor.getString(1)), "Test !");

                }

            }
          db.close();

    }

}

我认为在查询数据库时出现问题,但是我重新检查了代码,我认为查询没有问题。如何解决?

1 个答案:

答案 0 :(得分:0)

您需要先初始化dbHelper,然后再调用getWritableDatabase()或其他任何方法。