我希望我的Android设备进入睡眠状态(屏幕关闭),有人知道该怎么做吗?
过去我使用PowerManager
函数goToSleep(time)
,但显然这个函数不再存在,我不明白为什么。
其他主题讨论这些问题:
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "My wakelook");
wakeLock.acquire();
但它只允许设备进入睡眠模式,而不会告诉他现在进入睡眠模式。
我已经尝试过减少屏幕亮度的解决方案,但这并不是真正的解决方案,因为设备并没有真正进入睡眠模式。我不想使用以下代码:
android.provider.Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_OFF_TIMEOUT, timeoutInactivity);
因为我不想触摸屏幕显示设置,这更像是一种解决方法而非解决方案。
PS:这是系统应用程序,因此我没有任何权限/权限限制。
答案 0 :(得分:0)
private PowerManager mPowerManager;
private PowerManager.WakeLock mWakeLock;
public void sleep(){
mWakeLock = mPowerManager.newWakeLock(PowerManager.PROXIMITY_SCREEN_OFF_WAKE_LOCK, "tag");
mWakeLock.acquire();
}
试试这个