en

hi, it seems you are using microsoft internet explorer. it doesn't match web standard and causes problems browsing this site. please please please use mozilla firefox or google chrome instead. thank you!

zh

哦哦!您正在使用Internet Explorer 瀏覽器,它與我們的網頁標準並不相容,可能會導致畫面顯示不正常。
請改用 Mozilla Firefox 或者 Google Chrome 才能正常瀏覽本網站,謝謝!

5.03.2011

查詢裝置電池剩餘電量與狀態的方法

 

本範例中所得出的裝置電池剩餘電量最大精度為 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






沒有留言:

張貼留言