How do you retrieve a context
from within a Method that was called from onReceive
?
Here is an Example of what I'm trying to accomplish:
@Override
public void onReceive(Context context, Intent intent) {
...
...
if(...) {
callMethodOne();
callMethodTwo();
} else if (...) {
callMethodOne();
}
...
}
private void callMethodOne() {
// Cant use getApplicationContext
SharedPreferences getPrefs =
PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
}
private void callMethodTwo() {
// Cant use getSystemService
NotificationManager notificationManager =
(NotificationManager) getSystemService(NOTIFICATION_SERVICE);
}
As you can see, since the Methods are called multiple times/ways, moving all the code to be inside onReceive
would end up being very repetitive and extremely inefficient.
Any help is greatly appreciated!
Thank you.
Pass it the Context
:
private void callMethodOne(Context context) {
// Can't use getApplicationContext
SharedPreferences getPrefs =
PreferenceManager.getDefaultSharedPreferences(context);
}