2010-12-30 12 views
5

हाय जब मेरे ऐप को ACTION_BOOT_COMPLETED प्राप्त होता है तो यह एक सेवा शुरू करता है। मैं देरी करना चाहूंगा कि 60sec कहें।एंड्रॉइड ऐप फोन बूट पर आपकी सेवा शुरू करने में देरी कैसे करें

public class StartAtBootServiceReceiver extends BroadcastReceiver 
{ 

     public void onReceive(Context context, Intent intent) 
     { 
      // Delay...60sec 
     } 
} 
+0

आप कर सकते हैं, मैं आपको अनुमति देता हूं। –

उत्तर

4

उपयोग Timer() और TimerTask():

 Timer timer = new Timer(); 
     timer.schedule(new TimerTask() { 
      @Override 
      public void run() { 
       //run your service 
      } 
     }, 60000); 
+0

धन्यवाद यह कोशिश करेगा, प्रशस्त अलार्ममेनगर के बारे में बात कर रहा है। सबसे अच्छा क्या है? – Erik

+0

इतनी सरल देरी के लिए अलार्ममेनगर एक ओवरहेड है। इसका उपयोग अधिक जटिल मामलों में किया जाता है। –

+0

एंड्रॉइड डॉक्स स्टेटस "10 सेकेंड का टाइमआउट है जो सिस्टम रिसीवर को अवरुद्ध करने और उम्मीदवार को मारने पर विचार करने से पहले अनुमति देता है"। इसलिए, ट्राइवर का उपयोग कर रिसीव में अविश्वसनीय हो सकता है। मैं अलार्ममेनगर के साथ जाऊंगा! – wrygiel

2

आप BOOT_COMPLETED आशय प्राप्त जब आप AlarmManager सेटअप करने के लिए एक लंबित आशय है कि 60 सेकंड के बाद सक्रिय कर देगा का उपयोग करना चाहिए मैं कि में कर सकते हैं।

संबंधित मुद्दे