2013-11-21 4 views
5

मुझे पता है कि हम निम्न कर सकते हैं:यह देखने के लिए एडीबी का उपयोग करें कि विमान मोड चालू है या नहीं?

adb shell am start -a android.settings.AIRPLANE_MODE_SETTINGS 
adb shell input keyevent 19 ; adb shell input keyevent 23 

Android डिवाइस पर/बंद हवाई जहाज मोड को चालू करने की।

हालांकि, क्या यह जांचने के लिए वैसे भी है कि डिवाइस में एडीबी के माध्यम से विमान मोड चालू है या नहीं?

मैं यह पूछ रहा हूं क्योंकि उपरोक्त कोड की दो पंक्तियां यह जानने के बिना हवाई जहाज मोड को टॉगल करेंगी कि यह इसे चालू या बंद कर रही है या नहीं। लेकिन मुझे यह सुनिश्चित करने के लिए एक तरीका चाहिए कि हवाई जहाज मोड वास्तव में एडीबी के माध्यम से चालू/बंद हो।

कृपया मेरी मदद करें!

अग्रिम

धन्यवाद
+0

फो आरए विशिष्ट डिवाइस, दोनों स्थितियों में 'adb shell getprop' के आउटपुट पर एक diff चलाकर प्रकट होने वाले उपयोगी परिवर्तन प्रतीत होते हैं - उदाहरण के लिए नेटवर्क वाहक नाम के साथ - हालांकि सभी उपकरणों/संस्करणों में सामान्य नियम लिखना मुश्किल हो सकता है । लेकिन चूंकि आप एडीबी से बात कर रहे हैं, शायद आप उपकरणों के सीमित संग्रह पर स्वचालित परीक्षण चलाने के बारे में बात कर रहे हैं, जिसके लिए आप व्यावहारिक जांच का एक व्यावहारिक सेट निर्धारित कर सकते हैं। यह भी संभव है कि यदि हवाई जहाज मोड सक्रिय नहीं है तो आपको एक झूठी रिपोर्ट मिल जाएगी लेकिन डिवाइस को कुछ कारणों से सेवा खोजने में विफल रहा है। –

+0

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

उत्तर

13

adb shell settings get global airplane_mode_on रिटर्न 0 airplane_mode बंद के लिए और पर airplane_mode के लिए 1

+0

बहुत बहुत धन्यवाद! एक त्वरित सवाल, क्या आप जानते हैं कि मैं इस एडीबी शैल सेटिंग्स के बारे में और कहां प्राप्त कर सकता हूं? मेरा मतलब है कि कुछ अन्य चीजें मैं क्या पूछ सकता हूं? वाईफ़ाई चालू होने पर यह जांचने के लिए क्या मैं कुछ कर सकता हूं "adb shell सेटिंग्स वैश्विक wifi_on" प्राप्त करें? क्या वेब पर इस पर कोई दस्तावेज है? क्षमा करें अगर इसका वास्तव में एक स्पष्ट उत्तर है जिसे मैं नहीं देख रहा हूं। – JJackJi

+2

'सेटिंग्स get' कमांड "सेटिंग्स" सामग्री प्रदाता क्वेरी के लिए बस एक साधारण जावा रैपर है। और हमेशा के रूप में यह एंड्रॉइड के साथ है - सबसे अच्छा प्रलेखन स्रोत कोड https://android.googlesource.com/platform/frameworks/base/+/master/cmds/settings/src/com/android/commands/settings/ में है सेटिंग्सCmd.java –

16

आप एडीबी खोल करने के बाद निम्न आदेशों का उपयोग कर सकते हैं।

चालू:
adb shell settings put global airplane_mode_on 1
adb shell am broadcast -a android.intent.action.AIRPLANE_MODE --ez state true

बंद करें:
adb shell settings put global airplane_mode_on 0
adb shell am broadcast -a android.intent.action.AIRPLANE_MODE --ez state false

यह हवाई जहाज मोड कर देगा/बंद

+0

ऐसा लगता है कि आप '--ez' पैरामीटर को छोड़ सकते हैं, इसलिए प्रसारण आदेश सक्षम और अक्षम करने दोनों के लिए समान होगा: 'adb shell am broadcast -a android.intent.action.AIRPLANE_MODE'। क्या आप थोड़ा सा समझा सकते हैं कि यह वास्तव में कैसे काम करता है, कृपया? मेरा मतलब है कि दोनों आज्ञाओं की आवश्यकता क्यों है? पहला व्यक्ति केवल हवाई जहाज मोड सेटिंग बदलता है, लेकिन नेटवर्क पर वास्तविक प्रभाव के बिना, दूसरा काम बाकी करता है। –

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

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