【问题标题】:Keep app running under lockscreen in Windows Phone 8.1在 Windows Phone 8.1 中保持应用在锁屏下运行
【发布时间】:2015-02-28 21:26:29
【问题描述】:

好像

PhoneApplicationService.Current.ApplicationIdleDetectionMode = IdleDetectionMode.Disabled;

在 Windows Phone 8.1(非 Silverlight)中不再可用。有没有办法让应用程序在锁定屏幕下运行,比如播放音频,但为了我们自己的目的,比如在后台执行耗时的图像、视频处理?

https://msdn.microsoft.com/en-us/library/windows/apps/xaml/dn642090.aspx 等官方文档中,我猜想从 8.1 开始,在锁屏下运行的东西是微软股票应用程序的特权,开发人员仅限于他们提供的任何东西。例如第三方应用程序只能通过 MediaPlayer API 播放音频,并通过后台传输在后台下载/上传文件。我猜想其目的是控制流氓应用程序并节省电池;但这会迫使正版应用和用户保持屏幕开启,这会更加消耗电池电量。

【问题讨论】:

    标签: c++ windows-phone-8.1


    【解决方案1】:

    据我所知,无法在锁屏下运行您的应用(主要部分)。一旦锁定屏幕,您的应用就会暂停 (see more at MSDN)。

    如果你想防止自动锁屏,你可以使用DisplayRequest class

    请注意,当您的应用执行长时间运行的操作(也可能会消耗电池)时,用户应该可以取消/监控该过程。

    至于在WinRT后台运行代码是可以的:

    【讨论】:

    • 感谢您的信息。它证实了我的猜测。所以我想现在我必须坚持消耗电池DisplayRequest然后;如果亮度设置在最低水平,希望不会太多。现在我明白了为什么人们认为 Windows Phone 存在设计缺陷。后台任务似乎是我正在寻找的最接近的东西;但它们也“不能”在锁定屏幕下运行(由于施加的限制极其有限)。
    • @VuAnHoa 后台任务可以在锁屏下运行,即使你已经关闭它们也可以运行。虽然它们有一些限制,需要满足一些条件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多