मैं हर दिन कुछ कोड (हर 24 घंटे) चलाने के लिए चाहता हूं। समस्या यह है कि यदि उपयोगकर्ता ऐप नहीं खोलता है। जब एप्लिकेशन खुला नहीं होता है तो कोड कैसे चलाएं?ऐप खुला नहीं होने पर हर दिन कोड चलाएं
उत्तर
आप विभिन्न तरीकों से और उनमें से कुछ का उपयोग कर सकते पृष्ठभूमि आवधिक कार्य चलाने के लिए एंड्रॉयड में कर रहे हैं:
- JobScheduler
(केवल एपीआई 21 या इसके बाद के संस्करण के लिए) एंड्रॉयड इस वर्ग जोड़ा गया है प्रलेखन के लिए एपीआई 21 पर link है।
- JobSchedulerCompat - 11 एपीआई के लिए या इसके बाद के
आप पुस्तकालय here बारे में सब कुछ पा सकते हैं JobScheduler पुस्तकालय की backport।
- उपयोग अलार्म प्रबंधक को संभालने के लिए समय-समय पर कार्य
तुम भी AlarmManager
उपयोग कर सकते हैं समय-समय पर कार्य शेड्यूल करने के लिए। इसे लागू करने के लिए एक पूर्ण लेख here पोस्ट किया गया है।
- आवधिक कार्य निर्धारित करने के लिए जीसीएम (Google क्लाउड मैसेजिंग) नेटवर्क प्रबंधक का उपयोग करें।
आप इसे लागू करने के लिए link पर इस दस्तावेज़ को देख सकते हैं।
GCM नेटवर्क प्रबंधक
का उपयोग कर समय-समय पर कार्य के लिए उदाहरण अपनी परियोजना स्तर build.gradle में निर्भरता जोड़ें।
compile 'com.google.android.gms:play-services-gcm:7.5.0'
एक जावा वर्ग कि GcmTaskService
public class BackgroundTaskHandler extends GcmTaskService {
public BackgroundTaskHandler() {
}
@Override
public int onRunTask(TaskParams taskParams) {
//Your periodic code here
}
}
तक फैली हुई प्रकट में सेवा घोषित बनाएँ।एक्सएमएल
<service
android:name=".BackgroundTaskHandler"
android:exported="true"
android:permission="com.google.android.gms.permission.BIND_NETWORK_TASK_SERVICE">
<intent-filter>
<action android:name="com.google.android.gms.gcm.ACTION_TASK_READY" />
</intent-filter>
</service>
अब किसी भी वर्ग से समय-समय पर काम अनुसूची के रूप में: -
String tag = "periodic";
GcmNetworkManager mScheduler = GcmNetworkManager.getInstance(getApplicationContext());
long periodSecs = 60L;// 1 minute
PeriodicTask periodic = new PeriodicTask.Builder()
.setService(BackgroundTaskHandler.class)
.setPeriod(periodSecs)
.setTag(tag)
.setPersisted(true)
.setUpdateCurrent(true).setRequiredNetwork(com.google.android.gms.gcm.Task.NETWORK_STATE_CONNECTED)
.build();
mScheduler.schedule(periodic);
अनुसूचित आपरेशन लागू करने के लिए ब्रांड के नए रास्ते job scheduler, जो हाल ही जोड़ दिया गया (नहीं तो) है एसडीके स्तर 21.
समय-समय पर कार्य करने के लिए एक सरल (और बैकपोर्टेड) जिस तरह से उपलब्ध है उपयोग करने के लिए गूगल के लिए है खेल सेवाएं: network manager। इसके नाम के बावजूद, यह गैर नेटवर्क से संबंधित कार्यों को निर्धारित करने के लिए उपयोगी है।
चेक
अनुसूची एक आवधिक कार्य नेटवर्क और डिवाइस को चार्ज करने राज्यों की परवाह किए बिना
अनुभाग।
मुझे नहीं लगता कि जॉबशेड्यूलर एपीआई 11 या उससे ऊपर पर काम करता है। दस्तावेज़ीकरण के अनुसार इसे एपीआई 21 पर जोड़ा गया था। –
हां यह एक टाइपो था। धन्यवाद, धन्यवाद। – fedepaol
- 1. Django - हर दिन एक समारोह कैसे चलाएं?
- 2. ऐप खुला होने पर PUSH नहीं दिखा रहा है
- 3. UITableView: tableFooterView प्रदर्शित होने पर कोड चलाएं?
- 4. खुला होने पर क्रैश MFMailComposeViewController
- 5. कोई फ़ॉर्म रीसेट होने पर जावास्क्रिप्ट कोड कैसे चलाएं?
- 6. ऐप खुला होने पर एप्लिकेशन सेटिंग्स (सेटिंग्स) कैसे बदलें?
- 7. सूचनाएं हर दिन एंड्रॉयड
- 8. हर दिन 6 बजे
- 9. अलार्ममेनर एंड्रॉइड हर दिन
- 10. django खोल शुरू होने पर मनमानी कोड कैसे चलाएं?
- 11. एनीमेशन समाप्त होने के बाद कोड चलाएं
- 12. दोपहर में हर दिन एक सेवा कैसे चलाएं, और प्रत्येक बूट
- 13. एमएफसी ऐप समाप्त होने पर कस्टम कोड चलाएं: d'tor या WM_CLOSE?
- 14. MySQL: हर दिन का योग
- 15. दिन में एक बार चलाएं
- 16. प्रोग्रामिंग शुरू नहीं होने पर Dropzone processQueue() को कैसे चलाएं?
- 17. एसवीजी: दस्तावेज लोड होने पर स्क्रिप्ट चलाएं
- 18. गुप्त कोड दर्ज होने पर मेरा ऐप लॉन्च करें?
- 19. आईओएस रन कोड एक बार एक दिन
- 20. रन कोड दिन
- 21. रेल कोड कंसोल शुरू होने पर ही कुछ कोड कैसे चलाएं, आरसी फाइल की तरह?
- 22. बूटस्ट्रैप मोडल खुला होने पर पृष्ठभूमि अस्पष्टता को कैसे बदलें
- 23. छवि पर क्लिक होने पर ध्वनि फ़ाइल चलाएं
- 24. वेब पेज पर सी ++ ऐप कैसे चलाएं?
- 25. सॉफ्ट कीबोर्ड खुला होने पर FAB को कैसे छिपाना है।
- 26. एंड्रॉइड, ऐप खुला होने पर अधिसूचना के बजाय चेतावनी डिस्प्ले करें
- 27. सी # एप्लिकेशन शुरू होने पर कोड को सही तरीके से कैसे चलाएं?
- 28. बूटस्ट्रैप मोडल खुला होने पर पृष्ठभूमि स्क्रॉल को कैसे रोकें
- 29. jQuery - iframe नेविगेशन पर कोड चलाएं?
- 30. पृष्ठभूमि में ~ 30sec प्रक्रिया को हर घंटे (आईफोन ऐप) कैसे चलाएं
http://stackoverflow.com/questions/2333680/android-schedule-action [एंड्रॉयड अलार्म सेट की – nKn
संभव डुप्लिकेट कुछ दिनों में प्रबंधक] (http://stackoverflow.com/questions/5715940/setting-android-alarm-manager-on-certain-days) – Ankit