У меня есть AsyncTask, которая заполняет настраиваемый список проанализированными данными из Интернета.
В PostExecute я заполняю этот список и подготавливаю его для передачи в новое действие.
Я делаю это так:
@Override
protected void onPostExecute(List<VideoDataDescription> result)
{
super.onPostExecute(result);
MainActivity.progressDialog.dismiss();
context.startActivity(new Intent(context, ResultsQueryActivity.class));
}
where context
private Context context;
В LogCat после выполнения этого кода я получаю исключение Java.lang.NullPointerException. Возможно ли и правильно ли запускать действие, как это делаю я?
UPD Я добавил
private Context mContext;
public YoutubeAndYahooParser(Context context)
{
super();
this.mContext = context;
}
для инициализации контекста и вызова
YoutubeAndYahooParser youtubeAndYahooParser = new YoutubeAndYahooParser(ResultsQueryActivity.this);
youtubeAndYahooParser.execute("my string to pass in asynctak");
. После этого в PostExecute
Intent intent = new Intent(mContext, ResultsQueryActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
mContext.startActivity(intent);
я добавил новый флаг, потому что я получил в LogCat следующее:
* Для вызова startActivity () вне контекста Activity требуется флаг FLAG_ACTIVITY_NEW_TASK. Это действительно то, что вы хотите? *
Я прав?