ऐप स्टेट डिटेक्शन
यह पता लगाने के लिए कि iOS एप्लिकेशन बैकग्राउंड में है या फोरग्राउंड में, हम बस UIApplication का उपयोग कर सकते हैं जैसे हम इसका उपयोग बैटरी स्टेट, स्टेटस आदि जैसी कई अन्य चीजों का पता लगाने के लिए कर सकते हैं।
आइए देखें कि हम इसे अपने एप्लिकेशन में कैसे कर सकते हैं। हम अपने एप्लिकेशन के शेयर्ड रिसोर्सेज का उपयोग करेंगे जो UIApplication.shared में स्टोर हैं। हम इसे नीचे दिखाए अनुसार उपयोग कर सकते हैं:
print(UIApplication.shared.applicationState)
shared.applicationState State टाइप का एक एनम है, जिसमें Apple डॉक्यूमेंटेशन के अनुसार निम्नलिखित होते हैं:
public enum State: Int {
case active
case inactive
case background
}
केस active का मतलब है कि एप्लिकेशन फोरग्राउंड में है और टच इवेंट्स या किसी अन्य इवेंट को प्राप्त कर रहा है जो एप्लिकेशन को सक्रिय रख सकता है।
केस Inactive का मतलब है कि एप्लिकेशन फोरग्राउंड में चल रहा है लेकिन कोई इवेंट प्राप्त नहीं कर रहा है।
केस background का मतलब है कि एप्लिकेशन बैकग्राउंड में चल रहा है।
हम इसे अपनी जरूरतों के अनुसार ऊपर दिखाए अनुसार उपयोग कर सकते हैं। हम शर्तों के आधार पर कुछ ऑपरेशन भी कर सकते हैं।
let state = UIApplication.shared.applicationState
if state == .active {
print("I'm active")
} else if state == .inactive {
print("I'm inactive")
} else if state == .background {
print("I'm in background")
}
जब हम इसे अपने एप्लिकेशन के viewDidLoad में चलाते हैं तो हमें निम्नलिखित परिणाम मिलता है:
