Comment puis-je obtenir l'état de la batterie sur un iPhone?Comment obtenir l'état de la batterie?
Répondre
UIDevice *myDevice = [UIDevice currentDevice];
[myDevice setBatteryMonitoringEnabled:YES];
float batLeft = [myDevice batteryLevel];
int i=[myDevice batteryState];
int batinfo=(batLeft*100);
NSLog(@"Battry Level is :%d and Battery Status is :%d",batinfo,i);
switch (i)
{
case UIDeviceBatteryStateUnplugged:
{
[BCStatus setText:NSLocalizedString(@"UnpluggedKey", @"")];
break;
}
case UIDeviceBatteryStateCharging:
{
[BCStatus setText:NSLocalizedString(@"ChargingKey", @"")];
break;
}
case UIDeviceBatteryStateFull:
{
[BCStatus setText:NSLocalizedString(@"FullKey", @"")];
break;
}
default:
{
[BCStatus setText:NSLocalizedString(@"UnknownKey", @"")];
break;
}
}
BCStatus est uilabel.
Iphone SDK 3.0 beta prend en charge cette fonctionnalité.
Bien que l'information pourrait être couvert par la NDA ... –
... et là encore, il aurait pu être annoncé par Apple dans un forum public. –
Maintenant que le SDK 3.1 est publié, recherchez la section Obtenir l'état de la batterie du périphérique dans la documentation de UIDevice. C'est abunch des propriétés de la batterie *.
Voici ce que j'ai utilisé pour ma chaîne en tant que méthode utilitaire rapide, notez que vous devez activer la surveillance de la batterie pour obtenir une valeur, et si vous ne voulez pas recevoir les notifications , car ils vous donnent la possibilité de le désactiver), vous devez éteindre à nouveau après (comme je le fais dans cette fonction):
NSString *statusString(void)
{
UIDevice *device = [UIDevice currentDevice];
NSString *batteryStateString = nil;
switch(device.batteryState)
{
case UIDeviceBatteryStateUnplugged: batteryStateString = @"Unplugged"; break;
case UIDeviceBatteryStateCharging: batteryStateString = @"Charging"; break;
case UIDeviceBatteryStateFull: batteryStateString = @"Full"; break;
default: batteryStateString = @"Unknown"; break;
}
[device setBatteryMonitoringEnabled:YES];
NSString *statusString = [NSString stringWithFormat:@"Battery Level - %d%%, Battery State - %@",
(int)round(device.batteryLevel * 100), batteryStateString];
[device setBatteryMonitoringEnabled:NO];
return statusString;
}
les réponses ci-dessus sont très bons, mais ils sont tous dans obj- C, j'ai utilisé ceux-ci avec d'autres exemples pour faire la même tâche sur MonoTouch
, donc je mets mon code ici au cas où quelqu'un en aurait besoin:
try
{
UIDevice.CurrentDevice.BatteryMonitoringEnabled = true;
_Battery.Level = (int)(UIDevice.CurrentDevice.BatteryLevel * IOSBatteryLevelScalingFactor);
_Battery.State = UIDevice.CurrentDevice.BatteryState;
}
catch (Exception e)
{
ExceptionHandler.HandleException(e, "BatteryState.Update");
throw new BatteryUpdateException();
}
finally
{
UIDevice.CurrentDevice.BatteryMonitoringEnabled = false;
}
J'ai aussi un article complet sur mon blog pour donner tous les détails here
- 1. Obtenir l'état de la batterie à partir de J2ME
- 2. Comment programmer le niveau actuel de la batterie avec COCOA
- 3. État de la batterie dans OSX?
- 4. app pool identity - administrateur de la batterie
- 5. Événements batterie JSR 256
- 6. Surveiller la charge de la batterie avec Win32 API
- 7. Calcul de l'autonomie de la batterie dans iOS
- 8. Vérification du statut de la batterie dans le développement Blackberry
- 9. Détecteur d'état de batterie Nokia 6600
- 10. Comment alimenter l'activité de la batterie de mac os x macbooks?
- 11. Comment détecter une fuite de mémoire/décharge de la batterie dans une application iPhone
- 12. Comment obtenez-vous le niveau actuel de la batterie dans .NET CF 3.5?
- 13. Asp.net: Fonctionnement de la session dans un environnement de batterie de serveurs
- 14. Une batterie de serveurs est-elle abstraite des deux côtés?
- 15. Types de contenu MOSS 2007 - application à l'échelle de la batterie
- 16. Surveillance de la batterie ou de l'alimentation de l'ordinateur portable de java
- 17. Comment simuler un événement de fin de session à l'aide de l'état de session SQL dans la batterie de serveurs
- 18. Comment obtenir la borne
- 19. Icône d'ajout d'iPhone dans la barre d'état (un indicateur de batterie)
- 20. Comment obtenir la réponse?
- 21. Synchronisation de la configuration externe entre les serveurs IIS dans une batterie de serveurs Web
- 22. Comment obtenir la valeur numérique de Enum?
- 23. Comment obtenir la longueur de IStream? C++
- 24. Comment obtenir le nom de la classe
- 25. Comment obtenir la position de l'élément
- 26. Comment obtenir la valeur de MemberInfo?
- 27. Comment obtenir la partie date de datetime?
- 28. Comment obtenir la date de cette chaîne?
- 29. Comment obtenir la nième lettre de l'alphabet
- 30. Comment obtenir de la valeur avec UIDatePicker?
Notez que les notifications associées 'UIDeviceBatteryLevelDidChangeNotification' et' UIDeviceBatteryStateDidChangeNotification' ne sont pas envoyées si votre application s'exécute en arrière-plan – yano
quel est l'état de la batterie ici? –
@Codecracker batteryLevel est une valeur flottante allant de 0.0 à 1.0 et batteryState est une sorte de code qui indique que l'appareil est chargé, en charge, etc. –