Attempt to invoke virtual method 'void android.widget.CursorAdapter.changeCursor(android.database.Cursor)' on a null object reference

есть класс

public class ExampleReciver extends BroadcastReceiver {
    SQLiteDatabase db;

    DatabaseHelper databaseHelper;
    @Override
    public void onReceive(Context context, Intent intent) {
        // TODO: This method is called when the BroadcastReceiver is receiving
        // an Intent broadcast.

        AlarmManagerBroadcastReceiver BR = new AlarmManagerBroadcastReceiver();
        databaseHelper = new DatabaseHelper(context);
        // создаем базу данных
        databaseHelper.create_db();
        db = databaseHelper.open();
        db.delete(DatabaseHelper.TABLE2, "Date1 = ?", new String[]{String.valueOf(BR.calendar())});
        Cursor updatedCursor = db.query(TABLE2, null, null, null, null, null, null);
        BR.names(context);
       AlarmManagerActivity AM = new AlarmManagerActivity();
       AM.updateListView(context);



//        throw new UnsupportedOperationException("Not yet implemented");
    }
}

при попытке вызова метода из активити

public class AlarmManagerActivity extends Activity {
    private static String CHANNEL_ID = "Cat channel";
    private static final int CM_DELETE_ID = 1;
    int den;
    SharedPreferences sPref;
    SimpleCursorAdapter scAdapter1;
    ListView lvData2;
    private AlarmManagerBroadcastReceiver alarm;
    SQLiteDatabase db;
    Cursor userCursor;
    DatabaseHelper databaseHelper;
    boolean iteM;
    final String SAVED_TEXT = "saved_text";
    @RequiresApi(api = Build.VERSION_CODES.HONEYCOMB)
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        alarm = new AlarmManagerBroadcastReceiver();
        Context context = this.getApplicationContext();
        databaseHelper = new DatabaseHelper(context);
        // создаем базу данных
        databaseHelper.create_db();
        db = databaseHelper.open();
        lvData2 = (ListView) findViewById(R.id.lv);
        loadText();



       userCursor = db.query(TABLE2, null, null, null, null, null, null);

        String[] from1 = new String[] {DatabaseHelper.COLUMN_YEAR2, DatabaseHelper.COLUMN_NAME2};
        int[] to1 = new int[] { R.id.tvData,R.id.tvName};
        scAdapter1 = new SimpleCursorAdapter(this, R.layout.item, userCursor, from1, to1,2);


        lvData2.setAdapter(scAdapter1);
        // добавляем контекстное меню к списку
        registerForContextMenu(lvData2);
    }
    protected void updateListView(Context context){

        Cursor cursor = db.query(TABLE2, null, null, null, null, null, null);

        scAdapter1.changeCursor(cursor);


    }

выходит ошибка

ava.lang.RuntimeException: Unable to start receiver com.example.androidalarmmanager.ExampleReciver: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.CursorAdapter.changeCursor(android.database.Cursor)' on a null object reference
        at android.app.ActivityThread.handleReceiver(ActivityThread.java:3018)
        at android.app.ActivityThread.-wrap18(ActivityThread.java)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1544)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6077)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756)
     Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.CursorAdapter.changeCursor(android.database.Cursor)' on a null object reference
        at com.example.androidalarmmanager.AlarmManagerActivity.updateListView(AlarmManagerActivity.java:86)
        at com.example.androidalarmmanager.ExampleReciver.onReceive(ExampleReciver.java:31)

не могу понять почему?


Ответы (0 шт):