Ich möchte iOS-Code, der anzeigen kann, ob der Bildschirm beleuchtet ist oder nicht, so dass meine App den Batterieverbrauch aufgrund der (energiehungrigen) Hintergrundbeleuchtung überwachen kann. Dieser Code darf nur die öffentliche API verwenden, da ich beabsichtige, die App schließlich im App Store einzureichen.
Zunächst dachte ich, es handele sich vielleicht nur um eine Überprüfung der Helligkeit Eigenschaft des UIScreen, etwa so:
-(BOOL)isBackLightOn {
float brightness = [UIScreen mainScreen].brightness;
return brightness > 0;
}
aber das ist falsch denn [UIScreen mainScreen].brightness
steht für den Wert des Schiebereglers, den der Benutzer auf dem Bildschirm Einstellungen->Helligkeit ausgewählt hat, ノット die aktuelle Lichtleistung des Bildschirms.
Apple hat eindeutig eine Möglichkeit, diesen Wert zu ermitteln, da er in der Energiediagnose enthalten ist, die in Instruments angezeigt werden kann (siehe z. B. Protokollierung des Energieverbrauchs in einem iOS-Gerät ), aber vielleicht wurde diese Messung nicht über die öffentliche API veröffentlicht?