मैं एक एंड्रॉइड ऐप को दोबारा डिजाइन/रीडिज़ाइन करने की कोशिश कर रहा हूं। वर्तमान में, मेरे पास एक यूआई गतिविधि है (Activity 1
) जो DataThread
बनाता है। यह थ्रेड नेटवर्क I/O के लिए ज़िम्मेदार है और handler
के माध्यम से UI गतिविधि के साथ इंटरैक्ट (डेटा प्रदान करता है)।एंड्रॉइड सेवा कई गतिविधियों के साथ इंटरैक्टिंग
अब, मैं एक और गतिविधि (वीडियो के साथ एक नई यूआई स्क्रीन) जोड़ना चाहता हूं - Activity 2
। Activity 1
अभी भी मुख्य गतिविधि है। Activity 2
तब लागू किया जाएगा जब उपयोगकर्ता Activity 1
पर एक बटन क्लिक करता है। Activity 2
का डेटा भी DataThread
से आता है।
मेरा विचार एंड्रॉइड Service
(DataService
) के अंदर मेरे DataThread
का तर्क डालना है। मेरा सवाल है - एक ही समय में पर गतिविधि बाइंड से अधिक हो सकता है? क्या किसी विशिष्ट गतिविधि को डेटा प्रदान करने के लिए सेवा बताने का कोई तरीका है?
कोई अन्य विचार स्वागत है?
अग्रिम धन्यवाद।
मैं इस तरह के समाधान की तलाश में हूं, क्या इस कार्यान्वयन के बारे में अधिक जानकारी प्राप्त करने के लिए कोई कामकाजी उदाहरण या लिंक है, thx – Sam
@Rich यदि आप इसे बाध्य करते हैं तो आपका एप्लिकेशन समाप्त होने पर सेवा से स्पष्ट रूप से अनबाइंड कैसे प्रबंधित होता है आपके आवेदन वर्ग में? चूंकि एप्लीकेशन # ऑन टर्मिनेट() को कभी भी उत्पादन उपकरणों पर नहीं कहा जाता है, तो जावाडॉक http://developer.android.com/reference/android/app/Application.html –
@SvenJacobs एकमात्र तरीका है जिसके बारे में मैं सोच सकता हूं: सेवा कॉल को ' रोकें() 'कुछ समय बाद जब सभी गतिविधियां रोक दी जाती हैं। क्रियाकलापों को इस मामले में सेवा को अपने मामले में बताना होगा जब वे रुक रहे हैं। गतिविधियां कभी भी 'unbindService() 'को कॉल नहीं करतीं और सेवा प्रत्येक गतिविधि के प्रत्येक ऑन्यूज़() पर' applicationContext' से जुड़ी होती है। – OneWorld