2010-06-04 10 views
6

मुझे कुछ उपयोगकर्ताओं ने बताया है कि मेरा एंड्रॉइड ऐप उपयोग करने योग्य नहीं है क्योंकि उनके डिवाइस में मेन्यू कुंजी नहीं है।MENU कुंजी के बिना एंड्रॉइड डिवाइसों से निपटना

इन उपकरणों से निपटने का सबसे अच्छा तरीका क्या है? क्या यह पता लगाना संभव है कि डिवाइस में मेन्यू कुंजी की कमी है और केवल इस मामले में मेनू बटन दिखाएं?

और सबसे महत्वपूर्ण बात यह है कि आप सिम्युलेटर में इसका परीक्षण कैसे करते हैं?

धन्यवाद।

संपादित करें: स्पष्ट रूप से समस्या यह थी कि उपयोगकर्ताओं को यह नहीं पता था कि मेनू कुंजी को मेनू कुंजी कहा जाता था।

संपादित करें: इसके अलावा, कुछ अनौपचारिक एंड्रॉइड डिवाइस जैसे कि एकेन और एपैड में भौतिक मेनू कुंजी नहीं है।

+0

ब्याज में से, इस उपकरण क्या है? मैंने जो भी डिवाइस देखा है, चाहे वह ट्रैकबॉल, दिशा कुंजी, हार्ड कॉल बटन या टैबलेट डिवाइस हो, उसके पास मेनू बटन हो। –

+0

दोनों ने उनसे पूछा। एक ने कहा कि यह मोटोरोला Droid है, जो मुझे यकीन है कि मेनू बटन है। क्षमा करें, सबसे अधिक संभावना है कि मैंने जल्द ही सवाल पूछा। – hpique

+0

गैलेक्सी नेक्सस में कोई भी नहीं है। – Flame

उत्तर

2

मुझे आश्चर्य है कि मेनू के बिना डिवाइस हैं, जैसा कि मेरी टिप्पणी में बताया गया है।

इस हाल के प्रश्न का उल्लेख है, वहाँ नहीं वास्तव में इस का पता लगाने के लिए किसी भी API प्रावधान नहीं है:
Programatically detect presence of hardware call/hang up keys

यह भी प्रतीत होता है कि वहाँ कोई "मेनू कुंजी" हार्डवेयर विकल्प है कि आप एक AVD का उपयोग कर अनुकरण कर सकते हैं कि :
http://developer.android.com/guide/developing/tools/avd.html#hardwareopts

+1

मुझे लगता है कि @ क्रिस्टोफर सही है - मुझे लगता है कि हर एंड्रॉइड फोन में मेनू बटन होता है, लेकिन यह शायद उस पर "मेनू" नहीं कह सकता है। –

+3

संगतता परिभाषा दस्तावेज़ (सीडीडी) कहता है कि सभी एंड्रॉइड डिवाइसों में एक मेन्यू कुंजी या समकक्ष इशारा, टच पैनल इत्यादि होना चाहिए। Http://source.android.com/compatibility/index.html – CommonsWare

+0

घर और पीछे के लिए भी जाता है । इसलिए X10 जैसे डिवाइस जिनमें बटन हैं और स्क्रीन के नीचे केवल वे बटन हैं :) –

7

एंड्रॉइड 3.0 (एपीआई स्तर 11) से शुरू होने पर, उपकरणों को एक समर्पित मेनू बटन होना आवश्यक नहीं है। (यहां इसके बारे में और पढ़ें: http://developer.android.com/guide/topics/ui/menus.html)

इसका मतलब है कि आपको अपने उपयोगकर्ताओं के मेनू को सक्रिय करने का एक और तरीका प्रदान करना चाहिए। जब आप दबाए जाते हैं तो आप एक बटन बना सकते हैं और openOptionsMenu(); पर कॉल कर सकते हैं।

+0

प्रदान करने की आवश्यकता होगी 'डिवाइस कार्यान्वयन को लक्ष्य के लिए मेनू कुंजी प्रस्तुत करना चाहिए जब targetSdkVersion <= 10 और लक्ष्य SdkVersion> 10 के दौरान मेनू कुंजी मौजूद नहीं है।' –

+1

जो बेकार है क्योंकि मुझे एक साफ यूआई पसंद आया और विकल्प छुपाएं –

2

चेक डिवाइस मेनू कुंजी है यदि:

ViewConfiguration.get(context).hasPermanentMenuKey();

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