-1
ユーザーが選択した特定の時刻に通知しようとしています。この通知は、別のクラスにあるAsyncTaskを呼び出します。Android:通知でAsyncTaskを呼び出す例外
new ExtendedActivity().new Parse().getHoroscope("daily", signo);
私はgetHoroscopeにLog.d
を入れているが、私は得る例外は、その前にある:私は例外私はこのコードでAsyncTaskことを呼び出すたびに取得しています。
例外:
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);
}
クラス拡張
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");
(...)
}
誰も助けてくれますか?