gpt4 book ai didi

ios - 如何在 iOS 中使亮度变化永久化?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:24:32 25 4
gpt4 key购买 nike

GSEventSetBacklightLevel(BrightnessSlider.value); 

[[UIApplication sharedApplication] setBacklightLevel:BrightnessSlider.value];

iOS UIScreen 有亮度属性。将其设置为不同的值会更新屏幕亮度。但是在锁定/解锁屏幕亮度恢复到 iOS 设置中设置的任何亮度。

我必须打电话才能保存设置吗?有没有同步调用之类的?

这是越狱开发,没有“沙盒”。

最佳答案

UIApplication setBacklightLevel: 调用确实是临时的。

但是,如果您查看 SBSettings 中切换(更改)亮度级别的代码,那是一个永久设置。我仍然认为亮度的任何变化也会受到用户是否打开了设置 -> 亮度 -> 自动亮度 功能的影响。 Auto-Brightness 将动态调整屏幕亮度。

看看at this page .滚动到底部 see this link .

如您所见,通过将新的亮度级别写入 com.apple.springboard.plist 文件来实现永久亮度变化:

    NSMutableDictionary* Prefs = [NSMutableDictionary dictionaryWithContentsOfFile:@"/var/mobile/Library/Preferences/com.apple.springboard.plist"];

if(Prefs != nil)
{
NSLog(@"Prefs != nil\n");
float CurrentBacklight1 = [[Prefs objectForKey:@"SBBacklightLevel"] floatValue];
float CurrentBacklight2 = [[Prefs objectForKey:@"SBBacklightLevel2"] floatValue];
NSNumber* Number = [NSNumber numberWithFloat:CurrentBacklight];

if(CurrentBacklight2 > 0)
{
NSLog(@"CurrentBacklight2 = %f\n", CurrentBacklight2);
[Prefs setObject:Number forKey:@"SBBacklightLevel2"];
}
if(CurrentBacklight1 > 0)
{
NSLog(@"CurrentBacklight1 = %f\n", CurrentBacklight1);
[Prefs setObject:Number forKey:@"SBBacklightLevel"];
}
[Prefs writeToFile:@"/var/mobile/Library/Preferences/com.apple.springboard.plist" atomically:YES];
}

其中包含您看到的 SpringBoard 还原 的值。然后,更改也会临时应用到您正在使用的代码中:

[[UIApplication sharedApplication] setBacklightLevel:BrightnessSlider.value];

这两项更改的组合应该可以满足您的需求。

关于ios - 如何在 iOS 中使亮度变化永久化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12034369/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com