У меня есть AsyncTask, который заполняет пользовательский список проанализированными данными из Интернета.
В PostExecute я заполняю этот список и готовлю его к переносу в новое действие.
Я делаю это следующим образом:
@Override
protected void onPostExecute(List<VideoDataDescription> result)
{
super.onPostExecute(result);
MainActivity.progressDialog.dismiss();
context.startActivity(new Intent(context, ResultsQueryActivity.class));
}
где контекст
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флаг.Это действительно то, что вы хотите? *
Я прав?