昏暗的iPhone屏幕,但不要让它睡觉

Eth*_*ick 26 iphone sleep objective-c

更新

https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIScreen_Class/index.html#//apple_ref/occ/instp/UIScreen/brightness

这是用于控制屏幕亮度的Apple Doc.以下是原始问题.


我发现使用Google可以通过以下方式禁用iPhone在应用程序中睡眠:

application.idleTimerDisabled = YES;
Run Code Online (Sandbox Code Playgroud)

所以代码看起来像这样:

- (void)applicationDidFinishLaunching:(UIApplication *)application {    

    // Override point for customization after application launch

    // This disables the autosleep  I added this to TEST, 
    // delete later if you want:-
    application.idleTimerDisabled = YES;
    [window addSubview:switchViewController.view];
    [window makeKeyAndVisible];
Run Code Online (Sandbox Code Playgroud)

完美,效果很好.但是,我的问题是,我可以以某种方式禁止iPhone进入睡眠状态,同时仍然允许屏幕变暗吗?或者也许在应用程序中自己调暗屏幕以节省电池电量?

我绝对不希望iPhone睡觉,但我也希望用户友好/电池友好,并调暗屏幕.(你知道,就像你可以将iPhone设置为在睡眠前X秒调暗屏幕.)是否有一种有效的方法可以做到这一点?

Dav*_*des 11

我很确定官方SDK中没有任何内容.

[(id)[UIApplication sharedApplication] setBacklightLevel:0.3f]; // or whatever value
Run Code Online (Sandbox Code Playgroud)

工作,但当然没有证件.最近使用UIGetScreenImage的经验表明,使用有用但未记录的API的正确策略是使用它们并查看会发生什么.

如果没有这个,有没有人测量过手机的功耗是否显示黑色图像,或者除非你可以关闭背光,否则没有帮助?

  • 请记住,如果您使用此类私有API,Apple可以/将拒绝您的应用程序. (4认同)