2012-11-01 15 views

Antwort

24

Wie wäre es damit.

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

Vom apple documentation,

UIDeviceBatteryState: Die Batterie Zustand des Gerätes.

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

UIDeviceBatteryStateUnknown: Der Batteriezustand für das Gerät nicht bestimmt werden kann.

UIDeviceBatteryStateUnplugged: Das Gerät ist nicht an die Stromversorgung angeschlossen; Die Batterie verliert an Strom.

UIDeviceBatteryStateCharging: Das Gerät wird in der Stromquelle angeschlossen ist und die Batterie weniger als 100% berechnet.

UIDeviceBatteryStateFull: Das Gerät wird in der Stromquelle angeschlossen ist, und die Batterie ist zu 100% aufgeladen.


Update:

Sie Ihre Frage vollständig zu beantworten. So erkennen Sie, wenn ein Ladegerät eingesteckt ist. Es gibt eine Eigenschaft namens batteryMonitoringEnabled.

batteryMonitoringEnabled: Ein boolescher Wert, der angibt, ob die Batterieüberwachung aktiviert ist (YES) oder nicht (NO).

Aktivieren Sie die Batterieüberwachung, wenn Ihre App über Änderungen am Batteriezustand informiert werden muss oder wenn Sie den Batterieladezustand überprüfen möchten.

Der Standardwert dieser Eigenschaft ist NO, die:

  • Deaktiviert die Entsendung von batteriebezogene Benachrichtigungen
  • die Fähigkeit Sperrt Batterieladezustand und Batteriezustand
zu lesen

Dies wird die Benachrichtigungen UIDeviceBatteryLevelDidChangeNotification und UIDeviceBatteryStateDidChangeNotification, wenn der Batterieladestand chan ges. Sie können UIDeviceBatteryStateDidChangeNotification verwenden, um zu erkennen, wenn das Ladegerät eingesteckt ist.

+3

Sie würden wahrscheinlich diese Bedingung zu aktualisieren 'if (deviceBatteryState == UIDeviceBatteryStateCharging || deviceBatteryState == UIDeviceBatteryStateFull) ', da diese beiden Zustände bedeuten Das Gerät ist an die Stromversorgung angeschlossen. –

+0

Danke. Hinzugefügt das auch. – iDev

+0

@quegal, danke für die Korrektur, aber das war der genaue Wortlaut aus der Apple-Dokumentation, die ich zitierte ("Die Batterie entlädt sich").:) – iDev

Verwandte Themen