2016-04-23 4 views
5

जब आप वाई-फाई डायरेक्ट में discoverPeers पर कॉल करते हैं, तो PeerListListener में onPeersAvailable विधि में सहकर्मियों की एक सूची लौटाती है (एक बार जब आप requestPeers पर कॉल करते हैं)। हालांकि, जब आप discoverServices पर कॉल करते हैं, तो आपको onDnsSdServiceAvailable विधि DnsSdServiceResponseListener में केवल एक ही समय में एक सेवा मिलती है। क्या किसी को पता है कि इसे बदलने का कोई तरीका है या किसी भी समय उपलब्ध सभी सेवाएं उपलब्ध हैं? या यदि कोई विशेष कारण है कि यह केवल एक समय में क्यों लौटा सकता है?एंड्रॉइड वाई-फाई डायरेक्ट सर्विसेज के साथ एक समय में केवल एक सेवा क्यों लौटाता है?

उत्तर

1

जहां तक ​​मुझे पता है कि इसे बदलने पर कोई तरीका नहीं है। उन्हें सिर्फ एक करके दिया जाता है, और समय वास्तव में सेट नहीं होता है।

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

+0

इस उत्तर को जोड़ने के लिए, मुझे लगता है कि एंड्रॉइड डेवलपर्स द्वारा तर्क सही है। डिवाइस ने एक सेवा की खोज की है, इसलिए आपका आवेदन इस नई खोजी गई सेवा के बारे में अधिसूचित है। हालांकि, जब पीयरलिस्ट लिस्टनर कॉलबैक कहा जाता है, तो ऑनर ​​उपलब्ध विधि आपको सभी उपलब्ध सहकर्मियों की स्थिति प्रदान कर रही है। वाई-फाई पी 2 पी सेवा खोज में दो मिनट का समय समाप्ति है (https://sphen.proxmobil.com/android-wi-fi-direct-service-discovery/), ताकि आप बस उस दो मिनट की अवधि के लिए खोज सेवाओं को कैश कर सकें। –

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