使用Settings.System.putInt()以编程方式设置屏幕超时

时间:2014-08-18 14:31:06

标签: android

我知道有很多类似的问题。


要求是在“never”和原始设置之间切换屏幕超时。 当我做Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_OFF_TIMEOUT, -1);时,屏幕不会在模拟器(4.0 Ice Cream Sandwich)和三星Galaxy SII(4.1.2 Jelly Bean)上变暗,但当有人在4.4 KitKat上安装时,屏幕会立即变暗。

操作系统有什么变化吗?有没有办法让它永远不会在KitKat上超时?

由于我在设置它时遇到困难,所以我决定将它设置为120分钟。 当我尝试将其设置为特定时间(例如60分钟,120分钟等)时,设置为30分钟。其他值似乎也被上调/下调。 是否无法将其设置为Android设置应用中未列出的数字? (15秒,30秒,1分钟,2分钟,5分钟,10分钟,30分钟)

我希望有人可以启发我。提前谢谢。

2 个答案:

答案 0 :(得分:2)

  

操作系统有什么变化吗?

是的,Kitkat的AOSP做了些什么 当它得到-1时,它会修改-1到15秒。

答案 1 :(得分:0)

Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_OFF_TIMEOUT, -1);仅适用于19级及以下的api。

没有找到任何东西,但解决方法可能是你可以设置为30天的时间(即无限时间)。