Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/215.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android:在通知中调用异步任务时发生异常_Android - Fatal编程技术网

Android:在通知中调用异步任务时发生异常

Android:在通知中调用异步任务时发生异常,android,Android,我试图在用户选择的特定时间发出通知。此通知调用另一个类中的AsyncTask。每次使用以下代码调用AsyncTask时,我都会遇到一个异常: new ExtendedActivity().new Parse().getHoroscope("daily", signo); 我已经把Log.d放在了GetOroscope上,但我得到的例外是在它之前 例外情况: java.lang.RuntimeException: Unable to start receiver com.converter.a

我试图在用户选择的特定时间发出通知。此通知调用另一个类中的AsyncTask。每次使用以下代码调用AsyncTask时,我都会遇到一个异常:

new ExtendedActivity().new Parse().getHoroscope("daily", signo); 
我已经把
Log.d
放在了GetOroscope上,但我得到的例外是在它之前

例外情况:

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)
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");
        (...)
}
public类ExtendedActivity扩展BaseActivity{
//异步线程
公共类解析扩展异步任务{
公共字符串GetOroscope(字符串类型,字符串选项){
字符串description=“”,站点;
Log.d(“扩展”、“星座图内部”);
(...)
}

有人能帮我吗?

您不能调用new Activity()。创建活动的唯一方法是通过startActivity()。任何其他尝试都会立即或稍后导致错误。如果需要在活动外部使用该AsyncTask,请将其设为顶级类,而不是内部类

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");
        (...)
}