2015-09-04 8 views
9

एपीआई स्तर 23 के लिए एसडीके अद्यतन करने के बाद, मैंने पाया कि onAttach (Activity activity) बहिष्कृत है और नई विधि onAttach (Context context) है। क्या कोई मुझे इस बारे में बता सकता है कि यह परिवर्तन क्यों किया गया था?एटैच (गतिविधि गतिविधि) क्यों बहिष्कृत है?

उत्तर

4

मुझे लगता है कि यह मूल रूप से विधि के दायरे का विस्तार करने में किया गया है, लेकिन सरकारी changelog इसके बारे में कुछ नहीं कहा।

जैसा कि आप चेंजलॉग में देख सकते हैं, उन्होंने void onAttach(Activity) हटा दिया है, लेकिन उन्होंने एक ही नाम के साथ एक नया जोड़ा, और यह कहता है कि में इसे हटा दिया गया है।

richq टिप्पणी के अनुसार, support version of Fragment एटैच (गतिविधि) पर भी बहिष्कृत करता है और इसमें एक अटैच (संदर्भ) है जिसका उपयोग सभी एंड्रॉइड संस्करणों पर सीधे प्रागैतिहासिक लोगों के लिए किया जा सकता है।

इस नए परिवर्तन के लिए अनुकूल करने के लिए आप इस चरणों का पालन कर सकते हैं:

  • बदलें Activity से Context को onAttach कॉलबैक का तर्क प्रकार। अज्ञात कारण से, इस संशोधन तथ्य यह है कि विधि onAttach(Context) नहीं टुकड़ा जीवन चक्र के दौरान अब कहा जाता है का परिणाम है।

  • onAttach विधि onCreate पर कोड को तब से ले जाएं जब से यह अभी भी निष्पादित हो जाता है।

इस संशोधन के साथ

, अनुप्रयोग के रूप में पहले से चलाने के लिए बदल जाता है। कोई अतिरिक्त आयात विवरण की आवश्यकता नहीं है।

+1

[फ्रैगमेंट का समर्थन संस्करण] (https://developer.android.com/reference/android/support/v4/app/Fragment.html#onAttach%28android.content.Context%29) एटैच (गतिविधि) पर भी बहिष्कृत करता है) और एक अटैच (संदर्भ) है जिसका उपयोग प्रागैतिहासिक लोगों के ठीक पहले सभी एंड्रॉइड संस्करणों पर किया जा सकता है। – richq

+0

मैं आपकी टिप्पणी के साथ उत्तर संपादित करूंगा क्योंकि मुझे यह बहुत उपयोगी लगता है। – arodriguezdonaire

+0

"'गतिविधि' से 'संदर्भ' से 'अटैच' कॉलबैक के तर्क प्रकार को बदलें। अज्ञात कारण के लिए, इस संशोधन के परिणामस्वरूप इस तथ्य का परिणाम है कि 'एटैच (संदर्भ)' विधि को खंड जीवन चक्र के दौरान अब और नहीं कहा जाता है।" यह मुझे भ्रमित करता है - क्या आप कहने का मतलब था "'अटैच (गतिविधि)' अब खंडित जीवन चक्र के दौरान नहीं कहा जाता है"? – stkent

1

तक इस परिवर्तन हुआ है, एक टुकड़ा केवल एक गतिविधि से जुड़ा जा सकता है। इस बदलाव के बाद Google भी सेवाओं को टुकड़ों को जोड़ने की दिशा में काम कर सकता है। फेसबुक चैट के सिर कैसे काम करते हैं, वे एक गतिविधि के बाहर तैरने वाले टुकड़े भी हो सकते हैं।

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