本範例中所得出的裝置電池剩餘電量最大精度為 0.05,其程式碼如下。
//取得目前裝置
UIDevice *device = [UIDevice currentDevice];
//開啟電量檢測與取得電量
[device setBatteryMonitoringEnabled:YES];
float battery = [device batteryLevel];
//輸出
batteryLabel.text = [NSString stringWithFormat:@"%.2f", battery];
上述程式碼可以得到一個型態為 Float 的電量,當電池充滿電時其值為 1,隨後會因為電量的多寡使用浮點數來顯示,由於最大精度為 0.05,故無法顯示 98% 數值的電量。(大精度 0.05 為官方 iOS SDK 所制定,若要改變最大精度尚須修改其內部 Class)
在電池狀態方面可以由以下程式碼得知,裝置中的電池是處在何種狀態下,藉由判斷裝置電池狀態可以使應用程式更加活用。
//取得電池狀態
[device batteryState]
//正在充電
UIDeviceBatteryStateCharging
//電量已滿(有接電源)
UIDeviceBatteryStateFull
//未充電(沒有接電源)
UIDeviceBatteryStateUnplugged
//未知狀態
UIDeviceBatteryStateUnknown
沒有留言:
張貼留言