2008-10-08 9 views
10

पर ड्रॉपआउट के बाद एक EDGE कनेक्शन वापस आने पर यह निर्धारित करना कि मैंने अपने स्वयं के प्रोजेक्ट में ऐप्पल के रीचैबिलिटी नमूना को शामिल किया है, इसलिए मुझे पता है कि मेरे पास नेटवर्क कनेक्शन है या नहीं - अगर मेरे पास नेटवर्क कनेक्शन नहीं है, तो मैं बाहर भेजने और अनुरोध परेशान मत करो। मैंने स्टेटस अधिसूचना कार्यान्वयन के साथ जाने का फैसला किया क्योंकि पृष्ठभूमि में पहुंचने योग्यता को अपडेट करना आसान लग रहा था और जब भी मैं नेटवर्क कनेक्शन बनाना चाहता हूं तो एक सिंक्रोनस अनुरोध को लात मारने के विरोध में वर्तमान परिणाम तुरंत उपलब्ध होते हैं।आईफोन

मेरी समस्या यह है कि जब मुझे ईडीजीई नेटवर्क पर झूठी नकारात्मकता मिलती है - फोन में कनेक्टिविटी होती है, लेकिन ऐप सोचता है कि यह मामला नहीं है। मेरी समझ यह है कि आपको एक EDGE कनेक्शन के दौरान अधिसूचना नहीं मिलती है, इसलिए मेरी धारणा यह है कि मैंने कुछ बिंदु पर कनेक्शन खो दिया और वापस प्राप्त किया। ऐप को पुनरारंभ करना आमतौर पर नेटवर्क कनेक्शन देखने के लिए पर्याप्त होता है।

यह एक इष्टतम समाधान नहीं है, इसलिए मैं सोच रहा था कि कोई और इस समस्या से आया है और समाधान पर कोई विचार है।

(मुझे नहीं पता कि यह 3 जी पर भी लागू होता है; मैं पहला जीन आईफोन चला रहा हूं)।

उत्तर

14

वाई-फाई का पता लगाने के लिए पहुंच योग्यता नोटिफिकेशन मेरे लिए भी विश्वसनीय नहीं प्रतीत होता था। तो मैं इसके बजाय मतदान का उपयोग करता हूं। हर 5 सेकंड की जांच करने से कोई नुकसान नहीं होता है।

- (void) checkReachability { 
    BOOL connected = ([[Reachability sharedReachability] localWiFiConnectionStatus] == ReachableViaWiFiNetwork); 

    // Do something... 

    [self performSelector:@selector(checkReachability) withObject:nil afterDelay:5.0]; 
} 
+0

धन्यवाद मैं आज गम्यता को शामिल करने की योजना बना रहा था, इसलिए आप शायद मेरे भविष्य स्वयं कुछ समय बचाया :) –

+0

हे मैं इस class.I Reachability.h जोड़ा उपयोग कैसे करूँ और Reachability.m फ़ाइल और importedreachability.h फ़ाइल मेरे ऐप में अब जब मैं अपनी विधि में अपना तरीका डालता हूं तो मुझे त्रुटियां मिलती हैं। –

+4

पिछले वर्ष में पहुंच योग्यता कोड में काफी बदलाव आया है। तो, उपर्युक्त कोड अब और काम नहीं करेगा। –

1

नेट पर एक अच्छा पहुंच योग्यता उदाहरण है। यह आश्चर्यजनक रूप से अच्छी तरह से काम करता है: http://servin.com/iphone/iPhone-Network-Status.html

लेकिन आप देखते हैं, जब मैं इसे अपने तरीके से उपयोग करने का प्रयास करता हूं, तो यह बस बम होता है।

का उपयोग कर इसे लागू करने की कोशिश की:

NSString *sCellNetwork;  
NSString *sNetworkReachable; 

if (flags & kSCNetworkFlagsReachable || flags & kSCNetworkReachabilityFlagsIsWWAN) 

{do it} 

else { 
    Network fail alert; 
} 

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

  • कोई संबंधित समस्या नहीं^_^