मेरे पास एक ऐप है जो फ़ोन पर उपयोग किए जाने पर स्पीकरफ़ोन टॉगल बटन प्रदर्शित करता है। टॉगल फोन की इयरपीस और स्पीकरफ़ोन के बीच ऑडियो रूटिंग स्विच करता है। हालांकि, जब ऐप एक टैबलेट पर चलाया जाता है (या किसी भी डिवाइस जिसमें इयरपीस की कमी होती है), तो मैं टॉगल को हटाना चाहता हूं, क्योंकि सभी ऑडियो स्पीकरफ़ोन के माध्यम से रूट किए जाते हैं।एंड्रॉइड डिवाइस पर इयरपीस (स्पीकरफ़ोन केवल) की कमी का पता लगाएं
आदर्श रूप में, मैं किसी प्रकार का isEarpiecePresent()
कॉल का उपयोग करना चाहता हूं, या शायद इस जानकारी को ढूंढने के लिए कुछ कॉन्फ़िगरेशन ऑब्जेक्ट पर ध्वज की जांच करना चाहता हूं, लेकिन मुझे एपीआई में इस तरह के कुछ भी नहीं मिल रहे हैं।
मैंने AudioManager.setSpeakerphoneOn(false)
पर कॉल करके इस मुद्दे के आसपास काम करने का प्रयास किया, फिर AudioManager.isSpeakerphoneOn()
की जांच करके, यह उम्मीद करते हुए कि यह अभी भी सच हो जाएगा और मैं इससे बाहर निकल सकता हूं। सिस्टम false
लौटा, भले ही ऑडियो स्पीकर के माध्यम से अभी भी चल रहा हो।
मैं वर्तमान में टेलीफोनी क्षमता की जांच करने की सोच रहा हूं, भले ही यह बिल्कुल फिट न हो। कोई अन्य विचार?
FYI है, मुझे नहीं लगता कि टेलीफोनी क्षमता विश्वसनीय, जैसे हो जाएगा सैमसंग गैलेक्सी टैब जिसे मैंने टेलीफोनी का समर्थन किया है, लेकिन इसमें इयरपीस स्पीकर नहीं है। http://en.wikipedia.org/wiki/Samsung_Galaxy_Tab –
क्या आपने यह जांच लिया? http://developer.android.com/training/managing-audio/audio-output.html – Dusko
धन्यवाद स्टेटोसिना, लेकिन दुर्भाग्य से ऑडियो आउटपुट हार्डवेयर की पहचान के संबंध में उन दस्तावेज़ों में कुछ भी नहीं है। – Josh