2012-07-30 14 views
9

के बीच वाईफाई-डायरेक्ट संचार क्या एंड्रॉइड (> 4.0) डिवाइस मैक ओएस या विंडोज डिवाइस के साथ एक वाईफाई-डायरेक्ट कनेक्शन स्थापित करना संभव है?मैक/विंडोज और एंड्रॉइड

+0

वाईफ़ाई कनेक्टिविटी का उपयोग कर डेस्कटॉप पीसी से एंड्रॉइड डिवाइस पर ब्रॉडकास्ट संदेश का संभावित डुप्लिकेट] (http://stackoverflow.com/questions/6757665/broadcast-message-from-desktop-pc-to-android-device-using- वाईफाई-कनेक्टिविटी) – slayton

+0

वाईफाई डायरेक्ट नहीं है, लेकिन इसके साथ एंड्रॉइड से सामग्री साझा करने के लिए सही है: [HTTP के माध्यम से साझा करें | एफ-डोडिड - फ्री और ओपन सोर्स एंड्रॉइड ऐप रिपोजिटरी] (https://f-droid.org/en/packages/com.MarcosDiez.shareviahttp/) – eapo

उत्तर

5

Wifi-Direct Docs के अनुसार प्रोटोकॉल की अनुमति देता है:

Android 4.0 (एपीआई स्तर 14) या उचित हार्डवेयर के साथ बाद में उपकरणों Wi-Fi द्वारा एक दूसरे से सीधे जोड़ने के

यह नहीं करता है Google की तरह यह एपीआई के माध्यम से इस कार्यक्षमता प्रदान नहीं करता है। हालांकि वाईफाई-डायरेक्ट एक मालिकाना प्रोटोकॉल नहीं है और किसी भी प्लेटफॉर्म के लिए लागू किया जा सकता है। वाईफ़ाई प्रत्यक्ष प्राप्त करने की कोशिश लोगों के वेब के आसपास कुछ पदों खिड़कियों के तहत काम करने के लिए कर रहे हैं:

-6

आप सभी की जरूरत है java.net सॉकेट का उपयोग करने के लिए। प्रत्यक्ष कनेक्शन स्थापित करके आपका क्या मतलब है इस पर निर्भर करता है। गंतव्य डिवाइस (विंडोज़ या मैक) पर जब आप सर्वर सॉकेट द्वारा सॉकेट सुनना खोलते हैं तो टीसीपी कनेक्शन स्थापित होता है। अन्य डिवाइस पर आप गंतव्य पते के साथ सॉकेट का उपयोग कर सकते हैं। बेशक, विंडोज या मैक बॉक्स को उस बंदरगाह को फ़ायरवॉल में खोलना होगा।

मुझे लगता है कि आपको वास्तव में यह जानने की ज़रूरत है कि लक्ष्य कंप्यूटर का नाम कैसे प्राप्त करें या स्थानीय नेटवर्क पर कंप्यूटर कैसे खोजें। दुर्भाग्यवश, यह मुझे लगता है कि एंड्रॉइड संस्करण पर निर्भर नहीं है। आपको कुछ संकेतों के बारे में http://en.wikipedia.org/wiki/Zero_configuration_networking जांचना चाहिए। मुझे डर है कि एंड्रॉइड पर विशेषाधिकार प्राप्त बंदरगाह खोलने की आवश्यकता में समस्या हो सकती है, क्योंकि आम तौर पर आपको इसके लिए जड़ होना पड़ता है। और इसके लिए रूट एंड्रॉइड की आवश्यकता होगी।

बेशक आपको यह निर्दिष्ट करना चाहिए कि आप उस प्रत्यक्ष कनेक्शन के साथ क्या चाहते हैं और आपको किस सॉफ्टवेयर की आवश्यकता है। यदि दोनों सिरों के पास आपका आवेदन है, तो आप एंड्रॉइड पर आवंटित और अनधिकृत बंदरगाह को खोल सकते हैं। समय-समय पर एंड्रॉइड डिवाइस का नाम प्रसारित करने के लिए यूडीपी का उपयोग करें (उचित रूप से उपयोगकर्ता को अपने डिवाइस का नाम दर्ज करने के लिए कहें)। अनुरोध भेजने के लिए मल्टीकास्ट का उपयोग करें, और उसी तरह उत्तर प्राप्त करें। मल्टीकास्ट भेजने और प्राप्त करने के लिए एंड्रॉइड और विंडोज़ और मैक पर भी आपके आवेदन की आवश्यकता होगी। अब आप मल्टीकास्ट एप्लिकेशन से पढ़ सकते हैं कि यह किस प्रकार की मशीन है, और आपके सीधा कनेक्शन के लिए यह कौन सा स्थानीय बंदरगाह खुला है। Udp संदेश के स्रोत से आप जानते हैं कि कनेक्ट करना है।

आप चीजों को गति देने के लिए कुछ ढांचे का उपयोग कर सकते हैं। इन सभी को नेटवर्किंग के बारे में कुछ जानकारी चाहिए, लेकिन मुझे सरल और अच्छी तरह से काम करने वाला समाधान नहीं पता है। जब तक आप विवरण प्रदान नहीं करते हैं कि आपका सीधा संबंध क्या है।

+0

सॉकेट को केवल मौजूदा वाईफाई-डायरेक्ट कनेक्शन पर स्थापित किया जाना है । और यही वह है जो मैं पूछ रहा हूं, सॉकेट कनेक्शन नहीं। –

+0

ओपी पहले से स्थापित नेटवर्क पर एक टीसीपी-जैसे कनेक्शन को सेटअप करने का तरीका नहीं पूछ रहा है। इसके बजाय ओपी एक कंप्यूटर और एक एंड्रॉइड डिवाइस के बीच एक नया नेटवर्क कनेक्शन स्थापित करने के लिए वाईफाई-डायरेक्ट प्रोटोकॉल का उपयोग कैसे करना चाहता है, यह जानना चाहता है। – slayton

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