मेरे पास एक AsyncTask है, जो इंटरनेट से पार्स किए गए डेटा के साथ एक कस्टम सूची भरता है।एंड्रॉइड में PostExecute से गतिविधि को सही तरीके से कैसे शुरू करें?
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 मिलती है:
मैं इसे इस तरह से करते हैं। क्या यह एक गतिविधि शुरू करने के लिए यह संभव और सही है जैसा कि मैं करता हूं?
युपीडी मैं
private Context mContext;
public YoutubeAndYahooParser(Context context)
{
super();
this.mContext = context;
}
संदर्भ प्रारंभ और
Intent intent = new Intent(mContext, ResultsQueryActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
mContext.startActivity(intent);
PostExecute में
YoutubeAndYahooParser youtubeAndYahooParser = new YoutubeAndYahooParser(ResultsQueryActivity.this);
youtubeAndYahooParser.execute("my string to pass in asynctak");
इसके बाद फोन मैं नया झंडा जोड़ा की वजह से मैं मिल गया है में शामिल किया है अगले में LogCat में:
* किसी गतिविधि संदर्भ के बाहर से प्रारंभ करने की क्रिया सक्रियता() को FLAG_ACTIVITY_NEW_TASK ध्वज की आवश्यकता होती है। क्या यह वास्तव में आप चाहते हैं? *
क्या मैं सही हूँ?
आपने 'संदर्भ' कैसे शुरू किया है? – Vladimir
लगता है, नहीं। संदर्भ प्रारंभ कैसे करें? –
देखें dhaag23 का जवाब – Vladimir