2011-11-04 14 views
7

जब कोई इंटरनेट कनेक्शन उपलब्ध नहीं होता है तो मैं अपना ऐप बंद करना चाहता हूं।इंटरनेट उपलब्ध नहीं होने पर ऐप बंद करें

मैं इसे जांचता हूं, लेकिन मैं एक चेतावनी कैसे बना सकता हूं, और फिर अपना ऐप बंद कर सकता हूं?

+0

जो असामान्य व्यवहार लगता है यदि आप एक फोन पर कभी-कभी जुड़े डिवाइस होने पर विचार कर रहे हैं। –

+0

मैंने उन ऐप्स को देखा है जो ऐसा करने में कामयाब रहे हैं (दोस्तों के साथ शब्द, एक के लिए)। मुझे व्यक्तिगत रूप से यह पसंद नहीं है। –

+0

मेरा ऐप किसी वेब सर्वर से डेटा के साथ काम करता है, अगर कोई संकुचन नहीं होता है तो यह काम नहीं करता है, इसलिए मैं यह व्यवहार चाहता था। – DaSilva

उत्तर

19

आप मानक तरीका एक आवेदन को समाप्त करने के रूप में करीब एक एप्लिकेशन को बलपूर्वक नहीं करना चाहिए (मल्टीटास्किंग बार या का उपयोग करें) घर बटन दबाने की

प्रोग्राम


छोड़ो मत है

कभी भी आईओएस एप्लिकेशन को प्रोग्रामेटिक रूप से छोड़ दें क्योंकि लोग को क्रैश के रूप में समझते हैं। हालांकि, यदि बाह्य परिस्थितियां को आपके आवेदन को इच्छित कार्य करने से रोकती हैं, तो आपको स्थिति के बारे में अपने उपयोगकर्ताओं को बताना होगा और समझाएं कि वे इसके बारे में क्या कर सकते हैं। एप्लिकेशन खराब होने पर कितना गंभीर है, इस पर निर्भर करता है कि आपके पास दो विकल्प हैं।

समस्या का वर्णन करने वाली एक आकर्षक स्क्रीन प्रदर्शित करें और सुधार का सुझाव देता है। एक स्क्रीन फीडबैक प्रदान करती है जो उपयोगकर्ताओं को आश्वस्त करती है कि आपके एप्लिकेशन में कुछ भी गलत नहीं है। यह नियंत्रण में उन डालता है, उन्हें तय है कि क्या वे सुधारात्मक कार्रवाई करना चाहते हैं और जारी रखने या होम बटन दबाएं और अगर केवल अपने आवेदन की सुविधाओं में से कुछ काम नहीं कर रहे एक अलग आवेदन

खोलने आपके आवेदन का उपयोग कर, जब लोग सुविधा को सक्रिय करते हैं तो या तो स्क्रीन या अलर्ट प्रदर्शित करें। प्रदर्शन केवल अलर्ट जब लोग उस सुविधा तक पहुंचने का प्रयास करते हैं जो कार्य नहीं कर रहा है।

Source

+2

यह सच है। यदि आपका एप्लिकेशन सक्रिय कनेक्शन के बिना काम नहीं कर सकता है, तो आपको कुछ स्थिर यूआई प्रदर्शित करना चाहिए जो उपयोगकर्ता को बताते हैं। – tjarratt

6

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

5

अगस्त की ans here

"On the iPhone there is no concept of quitting an app. The only action that should cause an app to quit is touching the Home button on the phone, and that's not something developers have access to. 

According to Apple, your app should not terminate on its own. Since the user did not hit the Home button, any return to the Home screen gives the user the impression that your app crashed. This is confusing, non-standard behavior and should be avoided." 


लिए लेकिन अगर आप अब भी अपने ऐप से बाहर निकलना चाहते अनुसार प्रोग्राम के रूप में तो वहाँ दो आदेशों एप्लिकेशन छोड़ने की कर रहे हैं।

1.exit(0) 

2.[[NSThread mainThread] exit] 
5

इसके बजाय यह बंद करने के, एक पॉपअप के माध्यम से उपयोगकर्ता के लिए स्थिति को स्पष्ट करने पर विचार करें।

सबसे पहले, Reachability from Apple डाउनलोड करें।

कक्षाओं को Reachability.h, .m, अपनी परियोजना में प्रतिनिधि जोड़ें। फिर आपके अंदरमीटर वर्ग आयात गम्यता

#import "Reachability.h" 

और viewWillAppear में या जब आप सूचना प्रदर्शित करना चाहिए:

//Connection check 
    Reachability *reach = [Reachability reachabilityForInternetConnection]; 
    NetworkStatus netStatus = [reach currentReachabilityStatus];  
    if (netStatus == NotReachable) 
    { 
     UIAlertView * alert = [[UIAlertView alloc] initWithTitle:@"No Internet Connection" message:@"Explain the situation to the user" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"Ok", nil]; 
     [alert show]; 
     [alert release];  

    }  
    else { 
    //other actions. 
    } 

के रूप में दूसरों को मेरे सामने कहा।

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