Il semble qu'il y ait un bogue précédemment documenté (et signalé) dans iOS (qui semble toujours exister dans la "dernière version d'iOS") qui signifie que si vous pouvez utiliser [[UIScreen mainScreen] setBrightness:x] une fois que l'application a démarré, vous ne pouvez pas l'appeler à n'importe quel moment pendant l'événement d'arrière-plan (ce qui signifie que vous ne pouvez pas RESTAURER la luminosité au niveau où elle était avant le démarrage de votre application).
// Works as expected, screen dims
- (void)applicationDidBecomeActive:(UIApplication *)application
{
NSLog(@"applicationDidBecomeActive");
// Dim the screen (works)
[[UIScreen mainScreen] setBrightness:0.2];
}
Mais...
// Seems to fire if you double-tap the home key ('task manager' ;)
// Doesn't work
- (void)applicationWillResignActive:(UIApplication *)application
{
NSLog(@"applicationWillResignActive");
[[UIScreen mainScreen] setBrightness:1.0];
}
Je suis en train de transférer mon application Dock Clock d'Android à iOS et j'ai découvert que je ne pouvais pas rétablir la luminosité de l'écran. Il s'agit manifestement d'un bogue, mais je me demandais si quelqu'un avait trouvé une solution de contournement ?
Voici un prototype d'application de test très simple qui prouve le bug :