Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 在iOS中关闭自动亮度_Objective C_Iphone Privateapi_Brightness_Uiscreen - Fatal编程技术网

Objective c 在iOS中关闭自动亮度

Objective c 在iOS中关闭自动亮度,objective-c,iphone-privateapi,brightness,uiscreen,Objective C,Iphone Privateapi,Brightness,Uiscreen,自动亮度覆盖我为应用程序设置的屏幕亮度值。我将亮度设置为 [[UIScreen mainScreen] setBrightness:0.1]; 我想通过编程关闭自动亮度 我正在开发企业应用程序,所以使用私有api没有问题 我尝试了UIScreenRightnessDidChangeNotification,但它没有更新我的值 - (void)viewDidLoad { [super viewDidLoad]; NSNotificationCenter *center = [N

自动亮度覆盖我为应用程序设置的屏幕亮度值。我将亮度设置为

[[UIScreen mainScreen] setBrightness:0.1];
我想通过编程关闭自动亮度

我正在开发企业应用程序,所以使用私有api没有问题

我尝试了
UIScreenRightnessDidChangeNotification
,但它没有更新我的值

- (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];
         });
     }];
}
聆听并将亮度设置回处理程序中所需的位置

当然,您还需要添加代码,以便在应用程序进入后台(可能错过通知)后检查亮度。

请收听并将亮度设置回处理程序中所需的位置


当然,您还需要添加代码,以便在应用程序进入后台(可能会错过通知)后检查亮度。

已经尝试了,但它不起作用。我在块中得到触发器,但没有用我的值更新。@Shreyank请在您的问题中显示该代码/尝试。已经尝试了,但它不起作用。我在块中得到触发器,但没有用我的值更新。@Shreyank请在您的问题中显示该代码/尝试。我已将您的通知代码复制粘贴到我的Obj-C应用程序中,它工作正常(在运行iOS 11的iPhone 8上)。设置后,打印主屏幕的亮度;这说明了什么?@意思很重要-谢谢你的支持。就我而言,这是行不通的。运行应用程序时,我的设备的亮度为0.5(50%)。然后,我通过编程将按钮点击事件的亮度设置为0.1(10%),其亮度应保持不变,但亮度将发生变化,即使使用上述代码,其亮度也不会保持在0.1(10%)。它会在几秒钟后改变,或者我移动我的设备。我使用的是iOS 12.1版的iPhone X,我已经将你的通知代码复制粘贴到我的Obj-C应用程序中,它工作正常(在运行iOS 11的iPhone 8上)。设置后,打印主屏幕的亮度;这说明了什么?@意思很重要-谢谢你的支持。就我而言,这是行不通的。运行应用程序时,我的设备的亮度为0.5(50%)。然后,我通过编程将按钮点击事件的亮度设置为0.1(10%),其亮度应保持不变,但亮度将发生变化,即使使用上述代码,其亮度也不会保持在0.1(10%)。它会在几秒钟后改变,或者我移动我的设备。我正在使用iPhoneX和iOS 12.1