2011-01-07 10 views

Antwort

1

Ich glaube, dies mit den folgenden beantwortet werden können:

How to get the battery life of mac os x macbooks programatically?

Battery status in OSX?

Getting iPhone's battery level

How to get the Battery Charge Level specifically in mWh (not percentage) for Mac (Cocoa or C)

http://developer.apple.com/library/mac/#documentation/DeviceDrivers/Reference/IOBluetoothUI/index.html#//apple_ref/doc/uid/TP30000813

Hoffe es hilft. Dies wurde ein paar Mal gefragt, wie Sie sehen können.

aktualisieren

Ich weiß, es ist nicht Obj-C Eingeborenen api aber wenn Sie nicht IOPowerSources ausrechnen können Sie dies tun können, und analysieren die Ergebnisse

ioreg -l | grep BatteryPercent

+0

Das Problem ist jetzt, wie Kann ich den Status der Maus bekommen? Der 4. Link hat mir ein bisschen geholfen, aber wie kann ich die Maus bekommen? – cocos2dbeginner

+0

@ cocos2dbeginner Ich denke wirklich, Link 1 wird liefern, was Sie brauchen. Ich weiß, dass es nicht spezifisch darüber spricht, aber alle Batterietypen können durch IOPowerSources erhalten werden. Wenn ich einen Mac hätte, würde ich Code für dich schreiben. Es gibt auch eine Alternative, wenn Sie mit dem Erstellen eines Prozesses leben können, ich habe meine Antwort damit aktualisiert. –

+0

Hallo habe ich versucht: NSTask * server = [NSTask new]; [server setLaunchPath: @ "/ bin/sh"]; [Server setArguments: [NSArray arrayWithObject: @ "ioreg -c BNBMouseDevice | grep BatteryPercent"]]; NSPipe * outputPipe = [NSPipe pipe]; [Server setStandardInput: [NSPipe pipe]]; [Server setStandardOutput: outputPipe]; [Serverstart]; [Server waitUntilExit]; [Serverfreigabe]; NSData * outputData = [[outputPipe fileHandleForReading] readDataToEndOfFile]; NSString * outputString = [[[NSString-Zuweisung] initWithData: outputData-Codierung: NSUTF8StringEncoding] autoRelease]; aber es sagt keine solche Datei oder Verzeichnis gefunden. Terminal funktioniert – cocos2dbeginner