<分区>
如何让我的 iOS 应用检测设备何时充电?
标签 iphone ios objective-c
<分区>
如何让我的 iOS 应用检测设备何时充电?
最佳答案
这个怎么样。
UIDeviceBatteryState deviceBatteryState = [UIDevice currentDevice].batteryState;
if (deviceBatteryState == UIDeviceBatteryStateCharging || deviceBatteryState == UIDeviceBatteryStateFull) {
// It is charging
}
UIDeviceBatteryState:
设备的电池电量状态。
typedef enum {
UIDeviceBatteryStateUnknown,
UIDeviceBatteryStateUnplugged,
UIDeviceBatteryStateCharging,
UIDeviceBatteryStateFull,
} UIDeviceBatteryState;
UIDeviceBatteryStateUnknown:
无法确定设备的电池状态。
UIDeviceBatteryStateUnplugged:
设备未插入电源;电池正在耗电。
UIDeviceBatteryStateCharging:
设备已接通电源,电池电量低于 100%。
UIDeviceBatteryStateFull:
设备已接通电源,电池已充电 100%。
更新:
只是为了完整地回答你的问题。以下是检测充电器何时插入的方法。有一个名为 batteryMonitoringEnabled
的属性。
batteryMonitoringEnabled:
一个 bool 值,指示是否启用电池监控(YES)
或(NO)
。
如果您的应用需要收到电池状态变化的通知,或者您想要检查电池电量,请启用电池监控。
此属性的默认值为NO
,即:
- Disables the posting of battery-related notifications
- Disables the ability to read battery charge level and battery state
这将在电池电量变化时发布通知 UIDeviceBatteryLevelDidChangeNotification
和 UIDeviceBatteryStateDidChangeNotification
。您可以使用 UIDeviceBatteryStateDidChangeNotification
检测充电器何时插入。
关于iphone - 如何知道设备何时充电?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13186203/
相关文章:
ios - 如何更改 DispatchQueue 中对象的延迟时间
ios - 对 UITextField 的 inputView 使用约束
ios - 检测 tableView reloadData 完成的新解决方案?
objective-c - 使用 Cocoa 打印本地 HTML
iphone - 您需要支付许可费才能为 iPhone/iOS 编程吗?
iphone - 如何让 CAKeyframeAnimation 在覆盖另一个 CAKeyframeAnimation 时获取当前状态?
iphone - 当您尝试从不同的线程保存 managedObjectContext 时会发生什么?