在基于CE的Windows Mobile中,您可以使用SetPowerRequirement和ReleasePowerRequirement API来防止屏幕背光超时:
IntPtr handle = SetPowerRequirement("BKL1:", PowerState.FULL, 1, IntPtr.Zero, 0);
// screen won't timeout while you do stuff in here
ReleasePowerREquirement(handle);
WP7上有类似的事情吗?
答案 0 :(得分:11)
是的,有可能。您可以使用PhoneApplicationService.Current.UserIdleDetectionMode
来停止屏幕背光超时并停止屏幕锁定。
您还可以使用PhoneApplicationService.Current.ApplicationIdleDetectionMode
允许应用程序在锁定屏幕下继续运行。
以下是关于这两个选项的更多细节:
禁用此功能将停止屏幕超时和锁定。例如,我在下载大文件时禁用UserIdleDetectionMode,因此该应用程序不会中途停止下载。
下载完成后,我重新启用UserIdleDetectionMode,以便屏幕像往常一样超时。
NB:这是一次性点击。您可以禁用它,但无法重新启用它。
如果禁用ApplicationIdleDetectionMode,则当屏幕锁定时,您的应用程序将继续运行。如果用户启动其他应用,您的应用仍会死亡。
认证要求要求您在第一次禁用ApplicationIdleDetectionMode时提示用户。例如。 “这个应用程序将继续在锁定的屏幕下运行,并可能耗尽你的电池。你还好吗?”如果您不这样做,您的应用将被拒绝。