Отключить автояркость в iOS - PullRequest
1 голос
/ 07 июня 2019

Автояркость переопределяет значение яркости экрана, которое я установил для своего приложения.Я установил яркость на

[[UIScreen mainScreen] setBrightness:0.1];

Я хочу отключить автоматическую яркость программно

Я занимаюсь разработкой корпоративного приложения, поэтому нет проблем с использованием частного API

Я пытался сUIScreenBrightnessDidChangeNotification но это не обновляет мое значение

- (void)viewDidLoad {
    [super viewDidLoad];

    NSNotificationCenter *center = [NSNotificationCenter defaultCenter];
    [center addObserverForName:UIScreenBrightnessDidChangeNotification
                        object:nil
                         queue:nil
                    usingBlock:^(NSNotification *notification)
     {
         NSLog(@"Brightness changed: %f", [[UIScreen mainScreen] brightness]);
         dispatch_async(dispatch_get_main_queue(), ^{
             [[UIScreen mainScreen] setBrightness:0.1];
         });
     }];
}

1 Ответ

0 голосов
/ 07 июня 2019

Прослушайте BrightDidChangeNotification и установите яркость в нужном вам месте в вашем обработчике.

Конечно, вам также необходимо добавить код для проверки яркости после того, как приложение было в фоновом режиме (и, возможно, пропустило уведомление (я)).

...