在UWP应用程序(Windows 10)中,如何防止Windows操作系统进入睡眠模式?

时间:2017-07-23 08:05:34

标签: c# uwp windows-10

我正在开发通过麦克风录制用户语音的UWP应用(Windows 10)。我需要在录制过程中阻止操作系统进入睡眠模式。

我已使用以下代码来阻止屏幕锁定。

var displayRequest = new Windows.System.Display.DisplayRequest();
displayRequest.RequestActive(); 

但它只适用于手机,桌子。台式电脑仍处于睡眠模式。

2 个答案:

答案 0 :(得分:1)

确保DisplayRequest对象具有全局范围。如果你只在函数中定义它,那么它就会超出范围并被释放,计算机将进入休眠状态。

根据需要保留全局对象,然后在完成后调用RequestRelease()。

答案 1 :(得分:0)

在录制过程中,您的应用也应该在前台,否则它将被视为无效,即使在执行displayRequest.RequestActive();后屏幕也会被锁定。

在以下情况下,应用被视为无效(不在前台运行):

  • 平板电脑模式:如果您的应用未被关注,则会被视为无效
  • 桌面模式:如果您的应用最小化,则会被视为无效

有关此主题的更多详细信息,请参阅this blog post by windows app team.