मेरे पास SyncAdapter
के साथ एक एप्लिकेशन है।SyncManager द्वारा बंडल कितने समय तक जारी रहते हैं?
Bundle settingsBundle = new Bundle();
settingsBundle.putString(SyncAdapter.USER_READ, uid);
ContentResolver.requestSync(account, authority, settingsBundle);
यह सही ढंग से भविष्य में कुछ समय मेरी तुल्यकालन दिनचर्या कॉल करेंगे: इसके अतिरिक्त सामान्य तुल्यकालन के लिए मैं एक USER_READ
घटना है जिसके साथ मैं सिर्फ यह बने बिना एडाप्टर के लिए एक Bundle
पारित ट्रिगर। में सेट प्रत्येक uid
अपना स्वयं का रन ट्रिगर करेगा और सब कुछ अपेक्षित के रूप में समन्वयित हो जाएगा।
तो अब कनेक्शन बुरा है, या अनुरोध समयबाह्य हो, तो मैं एक नरम त्रुटि सेट:
syncResult.stats.numIoExceptions += 1;
जो कारण होगा अनुरोध बाद में दोहराया जाना। यह भी ठीक काम करता है।
कब तक इन SyncRequests/बंडल कायम मिलता है?
प्रलेखन राज्यों, जो एक नरम त्रुटि का सामना कर रहे हैं, एक एक्सपोनेशनल बैकऑफ का कारण बनेंगे और सिंक कुछ समय बाद चलाया जाएगा।
- क्या इसे किसी बिंदु पर रद्द कर दिया जाएगा? कई मुलायम त्रुटियों के बाद?
- क्या डिवाइस के रीबूट के बाद इसे फिर से लगाया जाएगा?
को देखते हुए कनेक्शन खराब है और तुल्यकालन नरम त्रुटियों के साथ कई बार विफल रहता है: मुझे पता है कि अगर सिर्फ एक सिंक अनुरोध enqueuing पर्याप्त है चाहते हैं, या अगर मैं अपने आप को दृढ़ता के कुछ प्रकार प्रदान करने के लिए सुनिश्चित करने के लिए अनुरोध किया जा रहा है किसी बिंदु पर भेजा गया।
यह आपकी आवश्यकता पर निर्भर करता है कि यह तब होगा जब सिस्टम नेटवर्क संदेश भेजता है, नियमित अंतराल पर, डिवाइस की रीबूट के बाद मांग पर http://developer.android.com/training/sync-adapters /running-sync-adapter.html –
@WaqasAhmed धन्यवाद, हाँ। मुझे दस्तावेज पता है। मैं बस विनिर्देशों के बारे में सोचता हूं कि ये अनुरोध कब तक जारी रहेगा, खासकर यदि मैं केवल * पूर्ण सिंक * का उपयोग नहीं करता हूं लेकिन बंडलों से डेटा की आवश्यकता है –