I'm trying to get some vars in MainActivity after finishing another activity started in Adapter for RecyclerView. MainActivity says that I'm trying to get them from a null object reference

MainActivity

public final static int REQUEST_CODE_C = 2;

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    switch (requestCode) {
        case REQUEST_CODE_C:

            int course_id = data.getExtras().getInt("courseId");
            boolean completeStatus = data.getExtras().getBoolean("courseCompleteStatus");
            courseList.get(course_id).setCompleteStatus(completeStatus);
            fullCoursesList.clear();
            fullCoursesList.addAll(courseList);
            courseAdapter.notifyDataSetChanged();

            break;
    }
}

CourseAdapter

public void onClick(View v) {
    Intent intent = new Intent(context, CoursePage.class);

    ((Activity) context).startActivityForResult(intent, REQUEST_CODE_C);
}

CoursePage

public void onBackPressed() {
    super.onBackPressed();

    int courseId = getIntent().getIntExtra("courseId", -1);
    boolean completeStatus = getIntent().getBooleanExtra("completeStatus", false);

    Intent resultIntent = new Intent();
    resultIntent.putExtra("courseId",courseId);
            resultIntent.putExtra("courseCompleteStatus",completeStatus);

    int course_id1 = resultIntent.getExtras().getInt("courseId");
    boolean completeStatus1 = resultIntent.getExtras().getBoolean("courseCompleteStatus");

    setResult(CoursePage.RESULT_OK, resultIntent);
    finish();
}

I can check if extras were put properly in CoursePage by calling getExtras for the intent I put them in but after trying to get them in MainActivity I have this:

2022-07-22 13:37:36.758 17186-17186/com.bs03.zerothree E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.bs03.zerothree, PID: 17186
java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=2, result=0, data=null} to activity {com.bs03.zerothree/com.bs03.zerothree.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'android.os.Bundle android.content.Intent.getExtras()' on a null object reference
    at android.app.ActivityThread.deliverResults(Unknown Source:123)
    at android.app.ActivityThread.handleSendResult(Unknown Source:146)
    at android.app.servertransaction.ActivityResultItem.execute(Unknown Source:11)
    at android.app.servertransaction.ActivityTransactionItem.execute(Unknown Source:4)
    at android.app.servertransaction.TransactionExecutor.executeCallbacks(Unknown Source:77)
    at android.app.servertransaction.TransactionExecutor.execute(Unknown Source:73)
    at android.app.ActivityThread$H.handleMessage(Unknown Source:127)
    at android.os.Handler.dispatchMessage(Unknown Source:19)
    at android.os.Looper.loopOnce(Unknown Source:176)
    at android.os.Looper.loop(Unknown Source:76)
    at android.app.ActivityThread.main(Unknown Source:138)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(Unknown Source:11)
    at com.android.internal.os.ZygoteInit.main(Unknown Source:309)
 Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.os.Bundle android.content.Intent.getExtras()' on a null object reference
    at com.bs03.zerothree.MainActivity.onActivityResult(MainActivity.java:277)
    at android.app.Activity.dispatchActivityResult(Unknown Source:11)
    at android.app.ActivityThread.deliverResults(Unknown Source:56)
    at android.app.ActivityThread.handleSendResult(Unknown Source:146) 
    at android.app.servertransaction.ActivityResultItem.execute(Unknown Source:11) 
    at android.app.servertransaction.ActivityTransactionItem.execute(Unknown Source:4) 
    at android.app.servertransaction.TransactionExecutor.executeCallbacks(Unknown Source:77) 
    at android.app.servertransaction.TransactionExecutor.execute(Unknown Source:73) 
    at android.app.ActivityThread$H.handleMessage(Unknown Source:127) 
    at android.os.Handler.dispatchMessage(Unknown Source:19) 
    at android.os.Looper.loopOnce(Unknown Source:176) 
    at android.os.Looper.loop(Unknown Source:76) 
    at android.app.ActivityThread.main(Unknown Source:138) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(Unknown Source:11) 
    at com.android.internal.os.ZygoteInit.main(Unknown Source:309)
0

There are 0 best solutions below