【问题标题】:How to turn off Auto-Brightness programmatically?如何以编程方式关闭自动亮度?
【发布时间】:2013-01-24 19:36:18
【问题描述】:

我想知道是否有一种方法可以将 iOS 设备上的“自动亮度”选项切换到关闭位置,如果有,它是什么?

【问题讨论】:

  • 如果没有,设置应用程序将无法执行此操作。所以是的。
  • @H2CO3 我不认为这是一个是/否问题
  • @Artem:当我写那条评论时,确实如此。现在不是了。
  • @АртёмЦарионов 不,肯定不是。对于造成的混乱,我深表歉意。
  • @H2CO3 你知道我在哪里可以访问这种方法吗?任何特定的 API 或框架?

标签: ios objective-c settings brightness screen-brightness


【解决方案1】:

我无法与任何权威人士交谈(无法证明是否定的,等等),但这似乎不像 Apple 会让 3rd 方应用程序能够修改的设置。当然,Settings.app 会修改它,但这并不意味着有公共 API 可以做到这一点。由于这篇文章中没有jailbreak 标签,我将继续假设提问者在询问公共 API。我会选择“你不能”。

【讨论】:

  • 您要小心,因为您知道我倾向于不赞成“这是不可能的!!!”-没有免责声明的帖子。好习惯!
  • 感谢您的回复。我实际上指的是公共 API。
  • 我似乎错了! wantsSoftwareDimmingFTW。 (或者可能不是?)
【解决方案2】:

当您在应用程序内部时可以调整亮度,并且它在 UIScreen 类中可用 -

这是文档 - http://developer.apple.com/library/ios/#documentation/uikit/reference/UIScreen_Class/Reference/UIScreen.html#//apple_ref/occ/instp/UIScreen/brightness

但 Apple 的官方公共 API 不允许 iOS 应用访问“设置”应用中的“常规”设置。因此,您将无法更改设置应用内的切换按钮。

【讨论】:

    【解决方案3】:

    Objective-C

    [[UIScreen mainScreen] setBrightness:1.0];
    

    是要走的路。是的,您可以以编程方式进行。只需传递 0.0 到 1.0 之间的值即可。根据苹果的说法是有效的,你不会遇到任何问题。

    Swift 3+

    UIScreen.main.brightness = CGFloat(1.0)
    

    https://discussions.apple.com/thread/2009141?tstart=0

    【讨论】:

    • 这并没有回答原来的问题。
    【解决方案4】:

    但您可以定期检查亮度,并在您的应用程序运行时将其调整到您希望的亮度(如果您真的需要)。

    【讨论】:

    • 应该通过收听brightnessDidChangeNotification来代替。
    • 这一定是这样做的@meaning-matters 我不知道当时有这样的通知。
    • 查看我的回复以了解如何实施。
    【解决方案5】:

    根据希望的回答,对于那些希望在屏幕自动改变亮度时得到通知的人:

    func trackBrightness() {   
        // Track brightness changes
        NotificationCenter.default.addObserver(self, selector: #selector(brightnessDidChange), name: UIScreen.brightnessDidChangeNotification, object: nil)
    }
        
    @objc func brightnessDidChange() {
        let newBrightness = UIScreen.main.brightness
        // Do something
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-11-16
      • 2014-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-15
      • 2015-11-26
      相关资源
      最近更新 更多