2010-03-10 17 views
22

क्या यह पता लगाने का कोई तरीका है कि वर्तमान में जिस डिवाइस पर मैं चल रहा हूं, उसके पास हार्डवेयर कीबोर्ड स्थापित है या नहीं?हार्डवेयर कीबोर्ड उपस्थिति का पता कैसे लगाएं?

मैं डिवाइस क्षमताओं को वैसे भी कैसे पूछूं?

उत्तर

31

"getResources द्वारा प्रदान किए गए झंडे() प्राप्त करें कॉन्फ़िगरेशन()। कीबोर्ड यह जांचने का अच्छा तरीका है कि कौन सा कीबोर्ड (यदि कोई है) उपलब्ध है।" [1]

http://d.android.com/reference/android/content/res/Configuration.html#keyboard

+13

मूल रूप से इसका मतलब है कि:।।! निजी बूलियन isHardwareKeyboardAvailable() { वापसी getResources() getConfiguration() कुंजीपटल = Configuration.KEYBOARD_NOKEYS; } – Marcus

+3

हां, यदि आपके उद्देश्यों के लिए आप "हार्डवेयर कीबोर्ड" के रूप में "12-कुंजी कीबोर्ड" की गणना कर रहे हैं। – HostileFork

+2

ध्यान दें कि यह एक कीबोर्ड का पता लगाएगा जो डिवाइस का एक अभिन्न हिस्सा है, लेकिन यह पता नहीं लगाएगा कि एक यूएसबी या ब्लूटूथ कीबोर्ड वर्तमान में संलग्न है या नहीं। इसके लिए https://stackoverflow.com/q/12161989/11683 देखें। – GSerg