এই পোস্টে আমরা দেখব iOS-এ ব্যাটারির স্টেট কীভাবে বের করতে হয়।
ধাপ ১: Xcode-এ নতুন প্রজেক্ট তৈরি করুন
Xcode খুলুন → New Project → Single View Application → নাম দিন "BatteryState"
ধাপ ২: Main.storyboard-এ দুটি লেবেল যোগ করুন
Main.storyboard খুলুন এবং নিচের ছবির মতো দুটি লেবেল যোগ করুন। এতে ব্যাটারি স্ট্যাটাস দেখাব।

ধাপ ৩: ব্যাটারি স্টেট মনিটরিং সক্ষম করুন
ViewController-এ viewDidLoad-এ নিচের কোড যোগ করুন:
UIDevice.current.isBatteryMonitoringEnabled = true
ধাপ ৪: ব্যাটারি স্টেট রাখার জন্য ভেরিয়েবল ঘোষণা করুন
var batteryState: UIDevice.BatteryState {
return UIDevice.current.batteryState
}
ধাপ ৫: ব্যাটারি স্টেট পরিবর্তনের জন্য অবজারভার যোগ করুন
viewDidLoad-এ নিচের কোড যোগ করুন:
NotificationCenter.default.addObserver(self, selector: #selector(batteryLevelDidChange), name: UIDevice.batteryLevelDidChangeNotification, object: nil)
এই অবজারভার যোগ করলে ব্যাটারি লেভেল পরিবর্তন হলে batteryLevelDidChange ফাংশন কল হবে।
ধাপ ৬: batteryLevelDidChange মেথডে ব্যাটারি লেভেল পরিবর্তন হ্যান্ডেল করুন
@objc func batteryLevelDidChange() {
updateBatteryStateLabel()
}
func updateBatteryStateLabel() {
var status = "Unknown"
switch batteryState {
case .charging:
status = "Charging"
case .unknown:
status = "Unknown"
case .unplugged:
status = "Unplugged"
case .full:
status = "Full"
}
DispatchQueue.main.async {
self.batteryStateLabel.text = "Battery State: \(status)"
}
}
এখানে updateBatteryStateLabel ফাংশন লেবেল আপডেট করতে। এটি batteryLevelDidChange থেকে কল করা হচ্ছে। viewDidLoad-এও কল করতে হবে প্রাথমিক স্টেট দেখানোর জন্য।
override func viewDidLoad() {
super.viewDidLoad()
UIDevice.current.isBatteryMonitoringEnabled = true
NotificationCenter.default.addObserver(self, selector: #selector(batteryLevelDidChange), name: UIDevice.batteryLevelDidChangeNotification, object: nil)
updateBatteryStateLabel()
}
ধাপ ৭: ডিভাইসে রান করুন
কোডটি রিয়াল ডিভাইসে রান করুন। ব্যাটারি স্টেট অনুযায়ী বিভিন্ন স্টেট দেখতে পাবেন।
