एक वेब सेवा से डेटा डाउनलोड करने के लिए कस्टम AsyncTaskLoader
का उपयोग करते समय, यदि मैं लोडिंग प्रक्रिया के बीच में होम बटन दबाता हूं और फिर ऐप को फिर से दर्ज करता हूं, तो ऑनलोड लोड () विधि नहीं कहा जाता है। मेरा टुकड़ा setRetainInstance(true)
को onActivityCreated()
में कॉल कर रहा है और यह उसी विधि में getLoaderManager.initLoader(0, null, this)
भी कॉल करता है (जैसा कि अनुशंसित है)।ऑनलोड लोड होम नाम से वापस आने के बाद बुलाया नहीं गया
परीक्षण करते समय, मुझे लगता है कि onActivityCreated()
को वापस आने पर यह नहीं कहा जाता है, इसलिए onLoadFinished()
नहीं कहा जाता है। लेकिन initLoader()
विधि कहां रखना है? मैंने कई स्थानों पर पढ़ा है कि इसे onResume()
में नहीं बुलाया जाना चाहिए।
तो, कोई विचार? मेरे ऐप में विभिन्न स्क्रीनों में मेरे पास बहुत सारे लोडर हैं और मुझे इस मुद्दे को एक सुरुचिपूर्ण तरीके से हल करने की आवश्यकता है।
आप कहाँ पढ़ा था कि 'initloader' बुलाया नहीं किया जाना चाहिए 'ऑनर्यूम()' में 'क्योंकि फ्रेमवर्क बग को काम करने के लिए बिल्कुल वही है जो https://code.google.com/p/android/issues/detail?id=63179 – faizal
@faizal मुझे वास्तव में याद नहीं है। मैं बहुत समय पहले लोडर का उपयोग करने से दूर चले गए हैं। बहुत से विशेषज्ञ देव नेटवर्क लोड करने के लिए लोडर्स का उपयोग करने के खिलाफ अनुभव से सलाह देते हैं। –