Ich versuche, eine Benachrichtigung zu einem bestimmten Zeitpunkt, der vom Benutzer gewählt wird, zu machen. Diese Benachrichtigung ruft eine AsyncTask auf, die sich in einer anderen Klasse befindet. Ich erhalte jedes Mal eine Ausnahme, die ich mit diesem Code, dass AsyncTask nennen:Android: Ausnahme Aufruf einer AsyncTask in einer Benachrichtigung
new ExtendedActivity().new Parse().getHoroscope("daily", signo);
Ich habe Log.d
auf getHoroscope setzte aber die Ausnahme, die ich bekommen ist, bevor es.
Die Ausnahme:
java.lang.RuntimeException: Unable to start receiver com.converter.android.dailyhoroscope.MyReceiver: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.pm.ApplicationInfo android.content.Context.getApplicationInfo()' on a null object reference at android.app.ActivityThread.handleReceiver(ActivityThread.java:2732) at android.app.ActivityThread.-wrap14(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1421) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:148) at android.app.ActivityThread.main(ActivityThread.java:5417) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.pm.ApplicationInfo android.content.Context.getApplicationInfo()' on a null object reference
at android.content.ContextWrapper.getApplicationInfo(ContextWrapper.java:150) at android.view.ContextThemeWrapper.getTheme(ContextThemeWrapper.java:110) at android.app.AlertDialog.resolveDialogTheme(AlertDialog.java:222) at android.app.AlertDialog.<init>(AlertDialog.java:200) at android.app.AlertDialog.<init>(AlertDialog.java:196) at android.app.AlertDialog.<init>(AlertDialog.java:141) at android.app.ProgressDialog.<init>(ProgressDialog.java:77) at com.converter.android.dailyhoroscope.ExtendedActivity$Parse.<init>(ExtendedActivity.java:73) at com.converter.android.dailyhoroscope.MyReceiver.createNotification(MyReceiver.java:89) at com.converter.android.dailyhoroscope.MyReceiver.onReceive(MyReceiver.java:60) at android.app.ActivityThread.handleReceiver(ActivityThread.java:2725) at android.app.ActivityThread.-wrap14(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1421) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:148) at android.app.ActivityThread.main(ActivityThread.java:5417) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
SchedulerActivity.java
Intent myIntent = new Intent(context, MyReceiver.class);
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
pendingIntent = PendingIntent.getService(context, 0, myIntent, 0);
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, hours);
calendar.set(Calendar.MINUTE, minutes);
calendar.set(Calendar.SECOND, 00);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), 24 * 60 * 60 * 1000, pendingIntent);
MyReceiver.java
@Override
public void onReceive(Context context, Intent intent)
{
(...)
SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(context);
signo = pref.getString(dHosocope,"");
createNotification(context, signo);
}
public void createNotification(Context context, String signo){
(...)
sentence = new ExtendedActivity().new Parse().getHoroscope("daily", signo);
}
Klasse Erweiterte
public class ExtendedActivity extends BaseActivity {
//AsyncThread
public class Parse extends AsyncTask<String, Void, String> {
public String getHoroscope(String type, String option){
String description="", site;
Log.d("Extended","inside getHoroscopes");
(...)
}
Kann mir bitte jemand helfen?