इस पोस्ट में हम देखेंगे कि आईओएस में बैटरी की स्थिति कैसे प्राप्त करें।
तो चलिए शुरू करते हैं।
चरण 1 − ओपन एक्सकोड → नया प्रोजेक्ट → सिंगल व्यू एप्लीकेशन → आइए इसे "बैटरीस्टेट" नाम दें
चरण 2 - Main.storyboard खोलें और नीचे दिखाए अनुसार दो लेबल जोड़ें। इस लेबल पर हम बैटरी की स्थिति दिखाएंगे।
चरण 3 - निम्नलिखित कोड का उपयोग करके बैटरी स्थिति की निगरानी सक्षम करें। आप इस कोड को ViewController के viewDidLoad में डाल सकते हैं
UIDevice.current.isBatteryMonitoringEnabled =true
चरण 4 - बैटरी की स्थिति को बनाए रखने के लिए एक चर घोषित करें। हम इस वेरिएबल बैटरीस्टेट को नाम देंगे। इस चर से हम UIDevice.current.batteryState लौटा रहे हैं, जो हमें वर्तमान बैटरी स्थिति देगा
var बैटरीस्टेट:UIDevice.BatteryState { रिटर्न UIDevice.current.batteryState}
चरण 5 - आपको बैटरी स्थिति परिवर्तन सूचनाओं के लिए पर्यवेक्षक को जोड़ना होगा। जब भी बैटरी की स्थिति बदलती है तो आईओएस द्वारा यह सूचना भेजी जाती है। जैसा कि नीचे दिखाया गया है, आप प्रेक्षक को viewDidLoad में जोड़ सकते हैं
NotificationCenter.default.addObserver(self, selector:#selector(batteryLevelDidChange), नाम:UIDevice.batteryLevelDidChangeNotification, ऑब्जेक्ट:nil)
हमने ऑब्जर्वर को जोड़ा है, बैटरी लेवल में बदलाव होने पर फंक्शन बैटरीलेवलडिडचेंज को कॉल किया जाएगा।
चरण 6 -बैटरीलेवलडिडचेंज विधि में बैटरी स्तर परिवर्तन को संभालें। विधि को इस प्रकार परिभाषित करें
@objc func batteryLevelDidChange() { updateBatteryStateLabel()}func updateBatteryStateLabel() { var status ="अज्ञात" स्विच बैटरीस्टेट {केस .चार्जिंग:स्टेटस ="चार्जिंग" केस .अज्ञात:स्टेटस ="अज्ञात" केस। अनप्लग्ड:स्थिति ="अनप्लग्ड" केस .पूर्ण:स्थिति ="पूर्ण" } DispatchQueue.main.async { self.batteryStateLabel.text ="बैटरी स्थिति:\(status)" }}
यहां हमने लेबल को अपडेट करने के लिए updateBatteryStateLabel फ़ंक्शन को परिभाषित किया है। इस फंक्शन को हम अपने ऑब्जर्वर फंक्शन यानी बैटरीलेवलडिडचेंज से कॉल कर रहे हैं। फ़ंक्शन अपडेटबैटरीस्टेट लेबल को प्रारंभिक बैटरी स्थिति दिखाने के लिए viewDidLoad से भी बुलाया जाना चाहिए। यह सब करने के बाद हमारा व्यूडिडलोड निम्नलिखित जैसा दिखता है
ओवरराइड func viewDidLoad() {super.viewDidLoad() UIDevice.current.isBatteryMonitoringEnabled =true NotificationCenter.default.addObserver(self, Selector:#selector(batteryLevelDidChange), नाम:UIDevice.batteryLevelDidChangeNotification, ऑब्जेक्ट:nil) अपडेट }पूर्व>डिवाइस पर कोड चलाएँ, बैटरी की स्थिति के आधार पर आपको नीचे चित्र में दर्शाए अनुसार विभिन्न अवस्थाएँ दिखाई देंगी।