2012-11-01 17 views

Odpowiedz

24

Co powiesz na to.

UIDeviceBatteryState deviceBatteryState = [UIDevice currentDevice].batteryState; 
if (deviceBatteryState == UIDeviceBatteryStateCharging || deviceBatteryState == UIDeviceBatteryStateFull) { 
    // It is charging 
} 

Z apple documentation,

UIDeviceBatteryState: Stan naładowania baterii urządzenia.

typedef enum { 
    UIDeviceBatteryStateUnknown, 
    UIDeviceBatteryStateUnplugged, 
    UIDeviceBatteryStateCharging, 
    UIDeviceBatteryStateFull, 
} UIDeviceBatteryState; 

UIDeviceBatteryStateUnknown: Stan baterii do urządzenia nie może być ustalona.

UIDeviceBatteryStateUnplugged: Urządzenie nie jest podłączone do zasilania; bateria traci moc.

UIDeviceBatteryStateCharging: Urządzenie jest podłączone do zasilania, a akumulator jest naładowany w mniej niż 100%.

UIDeviceBatteryStateFull: Urządzenie jest podłączone do zasilania, a akumulator jest w 100% naładowany.


Aktualizacja:

Wystarczy odpowiedzieć całkowicie swoje pytanie. Oto jak wykryć, kiedy ładowarka jest podłączona. Istnieje właściwość o nazwie batteryMonitoringEnabled.

batteryMonitoringEnabled: A Wartość logiczna wskazująca, czy monitorowanie akumulatorów jest włączone (YES) czy nie (NO).

Włącz monitorowanie baterii, jeśli aplikacja wymaga powiadomienia o zmianach stanu baterii lub jeśli chcesz sprawdzić poziom naładowania baterii.

Domyślna wartość tej właściwości jest NO, które:

  • Wyłącza delegowania powiadomień powiązany akumulatorowych
  • wyłącza możliwość odczytu poziomu naładowania akumulatora oraz stan baterii

Spowoduje to wysłanie powiadomień UIDeviceBatteryLevelDidChangeNotification i UIDeviceBatteryStateDidChangeNotification, gdy poziom naładowania baterii ges. Możesz skorzystać z UIDeviceBatteryStateDidChangeNotification, aby wykryć, kiedy ładowarka jest podłączona.

+3

Prawdopodobnie chcesz zaktualizować ten warunek do 'if (deviceBatteryState == UIDeviceBatteryStateCharging || deviceBatteryState == UIDeviceBatteryStateFull)', ponieważ oba te stany oznaczają urządzenie jest podłączone do zasilania. –

+0

Dzięki. Dodałem to też. – iDev

+0

@quegal, dziękuję za poprawienie, ale to było dokładne sformułowanie z dokumentacji Apple, którą zacytowałem ("bateria się rozładowuje").:) – iDev

Powiązane problemy