2011-03-28 20 views
7

मैं संदर्भ और गतिविधि के बीच भिन्न होने के लिए उलझन में हूं। वैसे भी संदर्भ क्या है? क्या संदर्भ एक गतिविधि से संबंधित है? गतिविधि बदल जाती है तो संदर्भ बदल जाएगा?एक गतिविधि = एक संदर्भ है?

मेरे पास एक ऐसा गेम है जिसमें एकाधिक गतिविधि है। प्रत्येक भाग, स्प्लैशस्क्रीन, मेनू, गेमस्क्रीन इत्यादि के लिए प्रत्येक गतिविधि समस्या यह है कि मेरे पास एक सिंगलटन साउंडमैनेजर है जो ध्वनि प्लेयर के रूप में ध्वनिपूल का उपयोग करता है। मैं स्प्लैशस्क्रीन में हर आवाज लोड करना चाहता हूं। लेकिन जब मैं इसे एक बार फिर सोचता हूं, तो संदर्भ के बारे में कैसे?

public void loadSound(Context context, int resId, String name) { 
     int id = sounds.load(context, resId, priority) 
    } 

अगर मैं SplashScreen गतिविधि में ध्वनियों लोड, मैं GameScreen गतिविधि में ध्वनि कैसे निभा सकता है? अलग संदर्भ यह नहीं है?

उत्तर

8

प्रति: http://android-developers.blogspot.com/2009/01/avoiding-memory-leaks.html

एंड्रॉयड पर, एक प्रसंग कई कार्यों के लिए प्रयोग किया जाता है लेकिन ज्यादातर लोड और पहुँच संसाधनों के लिए। यही कारण है कि सभी विजेट्स को उनके कन्स्ट्रक्टर में एक संदर्भ पैरामीटर प्राप्त होता है। नियमित एंड्रॉइड एप्लिकेशन में, आपके पास आमतौर पर दो प्रकार के संदर्भ, गतिविधि और एप्लिकेशन होते हैं।

और the Android docs से:

यह और साथ ही अप-कॉल अनुप्रयोग स्तर के संचालन के लिए आवेदन विशेष संसाधनों और वर्गों के लिए उपयोग की अनुमति देता है, इस तरह शुरू करने की गतिविधियों, प्रसारण और के रूप में इरादे प्राप्त करना, आदि

आम तौर पर प्रत्येक गतिविधि का अपना संदर्भ और आवेदन होगा स्वयं एक संदर्भ होगा।

+0

मुझे वास्तव में लेख पढ़ने में समझ में नहीं आता है। स्मृति की रिसाव का कारण क्या स्थिति हो सकता है? – Fugogugo

+1

संपूर्ण लेख पूरी तरह से रिलीज़ नहीं होता है, केवल एक भाग जिसे मैंने हाइलाइट किया है, यह दर्शाता है कि एक संदर्भ का उपयोग कैसे किया जाता है और प्रत्येक ऐप में आमतौर पर 2 प्रकार के संदर्भ होते हैं - गतिविधि संदर्भ और अनुप्रयोग संदर्भ – brendan

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