我可以防止 Windows Phone 7 上的屏幕超时吗?

发布于 2024-09-27 16:04:13 字数 482 浏览 3 评论 0原文

在基于 CE 的 Windows Mobile 中,您可以使用 防止屏幕背光超时SetPowerRequirementReleasePowerRequirement API 如下:

IntPtr handle = SetPowerRequirement("BKL1:", PowerState.FULL, 1, IntPtr.Zero, 0);
// screen won't timeout while you do stuff in here
ReleasePowerREquirement(handle);

是类似的东西WP7上可以吗?

In the CE based Windows Mobile you could prevent the screen back-light from timing out using the SetPowerRequirement and ReleasePowerRequirement API's like so:

IntPtr handle = SetPowerRequirement("BKL1:", PowerState.FULL, 1, IntPtr.Zero, 0);
// screen won't timeout while you do stuff in here
ReleasePowerREquirement(handle);

Is a similar thing possible on WP7?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

我一向站在原地 2024-10-04 16:04:13

是的,这是可能的。您可以使用 PhoneApplicationService.Current.UserIdleDetectionMode 来阻止屏幕背光超时并阻止屏幕锁定。

您还可以使用 PhoneApplicationService.Current.ApplicationIdleDetectionMode 允许应用程序在锁定屏幕下继续运行。

以下是有关这两个选项的更多详细信息:

UserIdleDetectionMode

禁用此选项将阻止屏幕超时和锁定。例如,我在下载大文件时禁用 UserIdleDetectionMode,因此应用程序不会中途终止下载。

下载完成后,我重新启用 UserIdleDetectionMode,以便屏幕可以像平常一样超时。

ApplicationIdleDetectionMode

注意:这是一次性的。您可以禁用它,但无法重新启用它。

如果您禁用ApplicationIdleDetectionMode,您的应用程序将在屏幕锁定时继续运行。如果用户启动不同的应用程序,您的应用程序仍然会死掉。

认证要求要求您在第一次禁用 ApplicationIdleDetectionMode 时提示用户。例如“此应用程序将继续在锁定屏幕下运行,并且可能会耗尽您的电池。您同意吗?”如果您不这样做,您的应用程序将被拒绝。

Yes, it is possible. You can use PhoneApplicationService.Current.UserIdleDetectionMode to stop the screen backlight timing out and stop the screen from locking.

You can also use PhoneApplicationService.Current.ApplicationIdleDetectionMode to allow the application to keep running under a lock screen.

Here's some more detail on those two options:

UserIdleDetectionMode

Disabling this will stop the screen from timing out and locking. As an example, I disable UserIdleDetectionMode while downloading a large file, so the app doesn't kill the download half-way.

When the download is completed, I re-enable UserIdleDetectionMode so the screen can timeout as usual.

ApplicationIdleDetectionMode

NB: This is a one-time hit. You can disable it, but you cannot re-enable it.

If you disable ApplicationIdleDetectionMode, your app will continue to run when the screen locks. Your app will still die if the user starts a different app.

The certification requirements ask that you prompt the user the first time you disable ApplicationIdleDetectionMode. E.g. "This app will continue to run under a locked screen, and may drain your battery. Are you ok with that?" If you don't your app will be rejected.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文