“自动亮度”将覆盖我为应用程序设置的屏幕亮度值。我通过
设置亮度[[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];
});
}];
}
答案 0 :(得分:0)
收听brightnessDidChangeNotification,然后将亮度设置回处理程序中所需的位置。
当然,您还需要添加代码,以在应用程序进入后台(并可能丢失通知)后检查亮度。