2012-08-03 60 views
1

我試圖正確獲取電池電量。但是這個價值並不像iPhone的狀態欄中的價值。iOS:如何正確獲取電池電量

通過代碼使用的UIDevice:

[[UIDevice currentDevice] setBatteryMonitoringEnabled:YES]; 

[[UIDevice currentDevice] batteryLevel]; 

請幫助我的人!我需要正確的電池電量,就像在狀態欄imdimatery。

+3

您是否真的閱讀過文檔? http://developer.apple.com/library/ios/DOCUMENTATION/UIKit/Reference/UIDevice_Class/Reference/UIDevice.html#//apple_ref/occ/instp/UIDevice/batteryLevel – Luke 2012-08-03 19:19:21

+0

可能的dumplicate與http://stackoverflow.com/questions/11807295/how-to-get-real-time-battery-level-on-ios – cat 2013-05-28 02:56:56

回答

10

井蘋果文檔說此:

電池水平從0.0的範圍(完全放電)到1.0(100%充電)。在訪問此屬性之前,請確保電池監控已啓用。

所以,你的代碼應該是這樣的:

[[UIDevice currentDevice] setBatteryMonitoringEnabled:YES]; 
float batteryLevel = [[UIDevice currentDevice] batteryLevel]; 

//This will give you the battery between 0.0 (empty) and 1.0 (100% charged) 
//If you want it as a percentage, you can do this: 

batteryLevel *= 100; 

希望這有助於!

+0

:(我做到了,但是在搜索步驟中返回5%。100% - > 95% - > 90%。 。但是那不正確地喜歡狀態欄中的值,請幫助我另一種方式。我在ios5中使用了一些軟件,它們得到正確的值。我認爲我們可以得到...但我不怎麼做。壞 – lithewall 2012-08-04 02:56:00

+1

你不能沒有越獄你不能*確切*電池百分比 – Sirens 2013-03-05 01:09:05

+0

我知道它的舊,但有一個名爲電池醫生的應用程序商店這個應用程序,它顯示的電池電量和充電狀態的確切值有關它如何做的任何想法? – ShayanK 2016-03-15 22:50:53