Как получить точный уровень заряда батареи? - PullRequest
1 голос
/ 09 сентября 2011

Это простой код моего простого приложения BatteryLevel Test.

- (void)viewDidLoad
{
    [super viewDidLoad];
    UIDevice *device = [UIDevice currentDevice];
    device.batteryMonitoringEnabled = YES;
    mLabel.text = [NSString stringWithFormat:@"%0.5f",device.batteryLevel];
}

Это изображение моего приложения, надеюсь, вы видите уровень заряда батареи в строке состояния и уровень заряда батареи моего приложения. Я не знаю, почему эти уровни разные ....? один - 99%, а уровень приложений - 0,95, что на самом деле составляет 95%

enter image description here

1 Ответ

1 голос
/ 10 января 2018
// Enable this property
UIDevice.current.isBatteryMonitoringEnabled = true

// Then add observer
NotificationCenter.default.addObserver(self, selector: #selector(batteryLevelDidChange(notification:)), name: NSNotification.Name.UIDeviceBatteryLevelDidChange, object: nil)

Метод наблюдателя

@objc func batteryLevelDidChange(notification: NSNotification) {
  // The battery's level did change
  print(UIDevice.current.batteryLevel)
}
...