I know this may be a duplicate but my situation is different which requires some explanation on this specific issue.
I'm getting the error :
java.lang.NullPointerException: Attempt to invoke virtual method 'android.app.ActivityThread$ApplicationThread android.app.ActivityThread.getApplicationThread()' on a null object reference
In the onClick
the method addEvent
is called from the class MyCalendar
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
MyCalendar myCalendar = new MyCalendar();
myCalendar.addEvent();
// myCalendar.AddEvent(2,context);
}
});
It calls the below method
public void addEvent(){
Calendar beginTime = Calendar.getInstance();
beginTime.set(2018, 11, 14, 7, 30);
Calendar endTime = Calendar.getInstance();
endTime.set(2018, 11, 14, 8, 30);
Intent intent = new Intent(Intent.ACTION_INSERT)
.setData(Events.CONTENT_URI)
.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, beginTime.getTimeInMillis())
.putExtra(CalendarContract.EXTRA_EVENT_END_TIME, endTime.getTimeInMillis())
.putExtra(Events.TITLE, "TEST ANDROID")
.putExtra(Events.DESCRIPTION, "EVENT HAS BEEN ADDED FROM ANDROID STUDIO")
.putExtra(Events.EVENT_LOCATION, "GIBRALTAR")
.putExtra(Events.AVAILABILITY, Events.AVAILABILITY_BUSY)
.putExtra(Events.CALENDAR_ID, 2)
.putExtra(Intent.EXTRA_EMAIL, "example@test.com");
startActivity(intent);
}
This method does work when it is declared within the MainActivity
but now that I have moved it to another class, it is showing that above exception.
How can I fix this?