पर हवाई जहाज मोड का पता लगाएं मैं कैसे पता लगा सकता हूं कि फोन हवाई जहाज मोड में है या नहीं? (यह पता लगाने के लिए पर्याप्त नहीं है कि कोई इंटरनेट कनेक्शन नहीं है, मुझे इन 2 मामलों में अंतर करने में सक्षम होना चाहिए)आईओएस
आईओएस
उत्तर
SCNetworkReachabilityGetFlags
(सिस्टम कॉन्फ़िगरेशन फ्रेमवर्क) का उपयोग करने का प्रयास करें। यदि झंडे परिवर्तनीय हाथ वापस 0 है और वापसी मूल्य हाँ है, हवाई जहाज मोड चालू है।
ऐप्पल के Reachability classes देखें।
नमस्ते, वापसी मूल्य हाँ है और मुझे इन दोनों परिस्थितियों में शून्य मिलता है: 1) वाईफ़ाई सेटिंग्स से अक्षम है और फोन 2 में कोई सिम कार्ड नहीं है) हवाई जहाज मोड। तो दुर्भाग्य से आपका सुझाव मेरी समस्या का समाधान नहीं करता है। – Caner
दोनों स्थितियों में पहुंच योग्यता की स्थिति नहीं है? ठीक है, ब्लूटूथ स्थिति अलग हो सकती है। – Felix
आप एयरलाइन मोड में मेल में उपयोग किए गए पॉपअप को प्रदर्शित करने के लिए अपने Info.plist में SBUsesNetwork Boolean ध्वज सेट को सही में जोड़ सकते हैं।
EXCEPT कि यह अनियंत्रित है और आईओएस की भावी रिलीज में तोड़ सकता है। –
हम निजी पुस्तकालयों का उपयोग किए बिना यह जानकारी नहीं प्राप्त कर सकते हैं। यहां कुछ कोड दिया गया है लेकिन वाहक सिग्नल उपलब्ध नहीं होने पर यह काम नहीं करेगा।
UIApplication *app = [UIApplication sharedApplication];
NSArray *subviews = [[[app valueForKey:@"statusBar"] valueForKey:@"foregroundView"] subviews];
NSString *dataNetworkItemView = nil;
for (id subview in subviews) {
if([subview isKindOfClass:[NSClassFromString(@"UIStatusBarSignalStrengthItemView") class]]) {
dataNetworkItemView = subview;
break;
}
}
double signalStrength = [[dataNetworkItemView valueForKey:@"signalStrengthRaw"] intValue];
if (signalStrength > 0) {
NSLog(@"Airplane mode or NO signal");
}
else{
NSLog(@"signal available");
}
जेलब्रेक तोड़ मरोड़/एप्लिकेशन के लिए:
@interface SBTelephonyManager : NSObject
+(id)sharedTelephonyManager;
-(BOOL)isInAirplaneMode;
@end
...
bool isInAirplaneMode = [[%c(SBTelephonyManager) sharedTelephonyManager] isInAirplaneMode];
तुम समझा सकते हैं ** क्यों ** आप इन दो मामलों में भेद करने की जरूरत है? यदि हवाईअड्डे के कारण कवरेज या कनेक्शन के कारण उपयोगकर्ता का कोई कनेक्शन नहीं है तो इससे क्या फर्क पड़ता है? – Jasarien
Becuase हम इसे अन्य मोबाइल प्लेटफार्मों पर अंतर कर सकते हैं और हम जितना संभव हो सके प्लेटफॉर्म पर समान कार्यक्षमता रखना चाहते हैं। हम इस पर निर्भर करते हुए अलग-अलग स्थिति संदेश दिखाते हैं और हम समस्या को ठीक करने के लिए उपयोगकर्ता को मार्गदर्शन करने का प्रयास करते हैं। – Caner
मुझे पता है कि यह एक पुराना सवाल है, लेकिन इस 'असाधारण संकीर्ण स्थिति' की आवश्यकता को स्पष्ट करने के लिए: जब एक आईफोन हवाई जहाज मोड में होता है, तो जीपीएस स्थान बेहद अविश्वसनीय होते हैं, लेकिन त्रुटियों का कारण नहीं बनते हैं। मैंने जीपीएस कार्यक्रमों की सदस्यता ली और मेरे ऐप को 2 घंटे तक चल दिया। कोई त्रुटि नहीं, कोई जीपीएस स्थान नहीं है, और 'स्थान घटनाएं प्राप्त कर सकते हैं' के लिए सभी चेक वापस YES। हालांकि, 3 जी और वाईफ़ाई को अक्षम करने से मुझे आंतरिक 'स्थान प्राप्त करने' चेक के लिए मैन्युअल रूप से नहीं दिया गया। सामान्य पहुंच क्षमता जांच के विपरीत स्पष्ट रूप से हवाई जहाज मोड का पता लगाने की आवश्यकता है। – Owen