2010-11-14 4 views

उत्तर

12

आप इसके लिए हैंडलर का उपयोग कर सकते हैं। उसके लिए पोस्टडेलेड (रननेबल, लांग) का उपयोग करें।

Handler#postDelayed(Runnable, Long)

4

उपयोग हैंडलर वर्ग, और Runnable handleMyAsyncTask कि 3000 msec विलंब के बाद मार डाला कोड में शामिल होंगे परिभाषित:

mHandler.postDelayed(handleMyAsyncTask, 1000*3); 
11

आप एक 3 सेकंड विलंब के बाद चलाने के लिए कोड के इस टुकड़े का उपयोग कर सकते हैं।

new Timer().schedule(new TimerTask() {   
    @Override 
    public void run() { 

     // run AsyncTask here.  


    } 
}, 3000); 
+0

क्या होगा अगर 1sec आवेदन बंद हो गया है? मेरा मतलब है कि आवेदन पूरी तरह से नष्ट हो गया है? क्या यह टाइमर अभी भी 3 सेकंड के बाद चलाएगा ... मैं बीसीजे से पूछ रहा हूं कि ऐप बंद होने पर भी एसिंक टास्क चलाने की मेरी ज़रूरत है .... – kumar

+0

नहीं, यह नहीं चलेगा। यदि आपको ऐप पुनरारंभ के माध्यम से बने रहने की आवश्यकता है, तो अलार्म का उपयोग करें। –

12

के रूप में अन्य उत्तर में सुझाव दिया संचालकों का उपयोग करना, वास्तविक कोड है:

new Handler().postDelayed(new Runnable() { 
    @Override 
    public void run() { 
     new MyAsyncTask().execute(); 
    } 
}, 3000); 
संबंधित मुद्दे