एंड्रॉइड नोब यहाँ। मैं एक कार्यात्मक उदाहरण के स्रोत कोड को देखकर सबसे अच्छा सीखता हूं, लेकिन मैं अपने धागे में सॉकेट का उपयोग करने का एक सरल लेकिन पूर्ण उदाहरण नहीं ढूंढ पाया।धागे में सॉकेट से डेटा कैसे प्राप्त करें?
मेरे पास एक एंड्रॉइड सेवा है जिसे इंटरनेट के साथ संवाद करने की आवश्यकता है। मैं एक टीसीपी सॉकेट खोलना चाहता हूं जो इंटरनेट पर किसी सर्वर से कनेक्ट हो। सेवा को इंटरनेट पर डेटा भेजने की जरूरत है, और नेट से वापस आने वाले डेटा को सेवा में जाना होगा। चूंकि सेवा अन्य चीजें भी कर रही है, इसलिए सॉकेट कनेक्शन को अपने धागे में रहने की जरूरत है।
कोई विचार जहां मुझे सॉकेट से संचार के साथ थ्रेड में सॉकेट का उदाहरण मिल सकता है?
धन्यवाद
क्या कोई है एक बार इसे शुरू करने के बाद AsyncTask को अतिरिक्त डेटा भेजने का तरीका ताकि डेटा सॉकेट को भेजा जा सके? मैं बैकग्राउंड थ्रेड से यूआई थ्रेड तक डेटा प्राप्त करने के लिए प्रकाशित प्रोग्रेस और ऑन प्रोग्रेसअपडेट का उपयोग कैसे करता हूं, लेकिन मुझे नहीं लगता कि कार्य चल रहा है, जबकि दूसरी तरफ कैसे जाना है। –
आप अपने एसिंक कार्य पर जो भी अन्य विधियां चाहते हैं उसे परिभाषित कर सकते हैं। बस जानते हैं कि doInBackground() विधि एक अलग थ्रेड पर निष्पादित केवल एक ही होगी। आप उस डेटा में भी पास कर सकते हैं जिसे आप कन्स्ट्रक्टर में या execute() विधि में भेजना चाहते हैं। –
जब मैं doInBackground() में सॉकेट खोलता हूं, तब तक नया थ्रेड अवरुद्ध होने जा रहा है जब तक कि डेटा सॉकेट पर न आए। जब डेटा आता है, तो मैं इसे प्रकाशित करने के माध्यम से यूआई थ्रेड पर भेज सकता हूं। चूंकि उस कार्यकर्ता धागे पर सॉकेट बनाया गया था, इसलिए मैं UI थ्रेड से सॉकेट में डेटा कैसे भेजूं? मैं डेटा स्ट्रीम से निपट रहा हूं, इसलिए execute() कमांड के साथ पैरामीटर भेजना अच्छा है, लेकिन मुझे लगातार सॉकेट में डेटा भेजना होगा। –