दिलचस्प पोस्ट
वर्कशीट्स और सेल और रेंज की डिफ़ॉल्ट गुंजाइश क्या है? क्या प्रत्येक ivar एक संपत्ति होनी चाहिए? एक पृष्ठभूमि कार्य या सेवा से वर्तमान अग्रभूमि अनुप्रयोग का निर्धारण करना स्प्रिंग बूट + जेपीए: कॉलम नाम एनोटेशन को नजरअंदाज किया गया फ़ाइल नाम से सॉर्ट करने का तरीका वैसे ही एक्सप्लोरर करता है? जावा में डिफ़ॉल्ट मान और आरंभ सी # में एकाधिक कुंजी चढ़ाव पर कब्जा ASP.NET MVC में त्रुटि हैंडलिंग एक हैश के लिए नमक छिपाने की आवश्यकता मैं एक जीआईटी रिपॉजिटरी से एक HTTP प्रॉक्सी के माध्यम से कैसे खींचूं? सी # दो सामान्य मान जोड़ना एंड्रॉइड: पीडीएफ व्यूअर में बनाए गए अपने ऐप से पीडीएफ खोलें Django स्थानीय सेटिंग्स स्टेटलेस प्रोग्रामिंग के फायदे? SQLite फ़ाइल स्थान कोर डेटा

एंड्रॉइड एमुलेटर कुंजीपटल इनपुट नहीं लेता – एसडीके टूल्स री 20

मैंने 20 (20 से) संशोधन करने के लिए एसडीके उपकरणों को अपग्रेड कर दिया है और उन्नयन के बाद से, एमुलेटर लैपटॉप के कीबोर्ड से इनपुट को स्वीकार नहीं करता है। लेकिन केवल एमुलेटर के अपने 'सॉफ्ट' कुंजीपटल का उपयोग (जो तब होता है जब एक इनपुट फ़ील्ड केंद्रित होता है)।

मैंने एसडीके टूल को पुनः स्थापित करने की कोशिश की है (और उस बात के लिए संपूर्ण एसडीके), अनप्लेयर और पुनः स्थापित एक्लिप्स एंड्रॉइड प्लगइन्स, पुनः निर्मित इम्यूलेटर डिवाइस लेकिन इसमें से कोई भी मदद नहीं करता है और मुझे पागल होने के कारण ही इसकी कुंजी एक लैपटॉप के ट्रैकपैड का उपयोग करने के लिए है।

क्या किसी ने इस समस्या का सामना किया है?

वेब के समाधान से एकत्रित समाधान "एंड्रॉइड एमुलेटर कुंजीपटल इनपुट नहीं लेता – एसडीके टूल्स री 20"

अद्यतन करें

SDK rev 21 के रूप में एंड्रॉइड वर्चुअल डिवाइस मैनेजर की एक बेहतर UI है जो इस समस्या को हल करता है। मैंने नीचे की कुछ महत्वपूर्ण कॉन्फ़िगरेशन सेटिंग्स को हाइलाइट किया है:

यहां छवि विवरण दर्ज करें

यदि आप देखते हैं कि आपके एमुलेटर से मुलायम (स्क्रीन-आधारित) मुख्य कुंजी Back , Home आदि गायब हैं तो उन्हें सक्षम करने के लिए hw.mainKeys=no सेट कर सकते हैं।

यहां छवि विवरण दर्ज करें

मूल उत्तर

भले ही डेवलपर दस्तावेज़ीकरण कहता है कि कीबोर्ड समर्थन डिफ़ॉल्ट रूप से सक्षम है, यह SDK rev 20 में ऐसा प्रतीत नहीं होता है। मैं स्पष्ट रूप से अपने एमुलेटर की config.ini फ़ाइल में कुंजीपटल समर्थन सक्षम है और वह काम किया!

जोड़ें: hw.keyboard=yes

को: ~/.android/avd/<emulator-device-name>.avd/config.ini

इसी तरह, hw.dPad=yes जोड़ें यदि आप ऐप की सूची में नेविगेट करने के लिए तीर कुंजी का उपयोग करना चाहते हैं।

संदर्भ: http://developer.android.com/tools/devices/managing-avds-cmdline.html#hardwareopts

मैक ओएस और लिनक्स पर आप अपने सभी इम्यूलेटर कॉन्फ़िगरेशन को एक टर्मिनल कमांड के साथ संपादित कर सकते हैं:

for f in ~/.android/avd/*.avd/config.ini; do echo 'hw.keyboard=yes' >> "$f"; done


संबंधित नोट पर, यदि आपका टेबलेट एमुलेटर बैक / होम बटन लापता है, तो AVD संपादक में बिल्ट-इन त्वचा के रूप में WXGA800 का चयन करने का प्रयास करें: यहां छवि विवरण दर्ज करें

या config.ini में मैन्युअल रूप से त्वचा सेट करके:

 skin.name=WXGA800 skin.path=platforms/android-16/skins/WXGA800 

(उदाहरण एपीआई 16 के लिए है)

की पुष्टि। उपकरण संस्करण 20 में अपग्रेड करने के बाद मेरे पास एक ही समस्या थी। मुझे निम्नानुसार एक विकल्प जोड़ने के लिए एवीडी संपादित करना था:

  1. एक्लिप्स से, एवीडी मैनेंडर पर जाएं।
  2. विशेष AVD का चयन करें और संपादित करें पर क्लिक करें
  3. हार्डवेयर अनुभाग पर जाएं, नई पर क्लिक करें
  4. संपत्ति का नाम चुनें: कीबोर्ड समर्थन
  5. डिफ़ॉल्ट रूप से, इसे 'नहीं' के मान के साथ जोड़ा जाता है बस वैल्यू कॉलम पर क्लिक करें और इसे 'हां' में बदलें।
  6. एडीडी संपादित करें पर फिर से क्लिक करें

यह AVD के लिए config.ini फ़ाइल में एक संपत्ति hw.keyboard = yes में जोड़ देगा।

एंड्रॉइड स्टूडियो में, एवीडी प्रबंधक (टूल्स> एंड्रॉइड> एवीडी मैनेजर) खोलें। एमुलेटर के संपादन बटन को टैप करें: यहां छवि विवरण दर्ज करें

"उन्नत सेटिंग दिखाएं" चुनें यहां छवि विवरण दर्ज करें

"कीबोर्ड इनपुट सक्षम करें" चेक करें यहां छवि विवरण दर्ज करें

समाप्त करें क्लिक करें और कीबोर्ड इनपुट का आनंद लेने के लिए इम्यूलेटर प्रारंभ करें।

एवीडी प्रबंधक में देखो, एवीडी का चयन करें और संपादन में क्लिक करें। हार्डवेयर खंड में: "नया" पर क्लिक करें और "कीबोर्ड समर्थन" की खोज करें और ओके बटन से जोड़ें और मान को "हां" पर सेट करें और "AVD संपादित करें" के साथ परिवर्तन सहेजें

Google डेवलपर्स को कुछ और सिरदर्द देना चाहता था

तो, अब आपको क्या करना है, आपके एडीडी को संपादित करना है और इसके लिए हार्डवेयर खंड में "कीबोर्ड समर्थन" जोड़ें और मान को "हां"

आपके होम फ़ोल्डर में /.android/avd//config.ini लाइन hw.keyboard = yes जोड़ें

बस में किसी को यह उपयोगी मिल पाता है

मुझे KEYCODE_DPAD_UP के साथ एक समस्या थी, यह ट्रैकबॉल से संबंधित है इस बदलाव को हल करने के लिए अपने avdfolder / config.ini hw.trackBall = हाँ और DEL या F6 दबाएं

एवीडी कुंजीपटल इनपुट सक्षम होने के बावजूद टाइपिंग अनुपलब्ध होने पर कभी-कभी इम्यूलेटर का उपयोग करना संभव होता है

अपने यूज़र होम फ़ोल्डर में छिपा हुआ। एंड्रॉइड फ़ोल्डर को ढूंढें। आप इस फ़ोल्डर का नाम बदल सकते हैं या हटा सकते हैं, अपने एडीडी को पुनः बनाएं, और एमुलेटर को पुनः आरंभ कर सकते हैं। यह उस फ़ोल्डर में एक .i फ़ाइल हो सकती है जिसकी सेटिंग में मूंग है।

हार्डवेयर कुंजीपटल के साथ एक एडीडी को पुनः बनाने + बुलियन को सही पर सेट करना एकमात्र समाधान था जो मेरे लिए काम करता था; अन्य दो मुख्य समाधान (टर्मिनल या जीयूआई के माध्यम से एक मौजूदा एवीडी संपादन) दोनों के कारण मेरे मैक पर सॉफ़्टवेयर / एमुलेटर क्रैश हो गए। एक नया एवीडी बनाने के लिए कीबोर्ड पर काम करना ठीक हो गया।