【问题标题】:How can I keep my screen on using a background running app?如何让我的屏幕使用后台运行的应用程序?
【发布时间】:2014-06-19 01:39:13
【问题描述】:

我需要制作一个即使在后台运行时也能保持屏幕亮起的应用。

我试过了:

    getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

但它仅在应用程序正在运行且无法作为服务运行时才有效。

我也尝试过唤醒锁,但 SCREEN_BRIGHT_WAKE_LOCK 和 FULL_WAKE_LOCK 都已被弃用。剩下的唯一唤醒锁是 PARTIAL_WAKE_LOCK。

有没有办法让屏幕保持在使用 PARTIAL_WAKE_LOCK、ACQUIRE_CAUSES_WAKEUP 和一些循环?

坦率地说,我在 Java 或应用程序开发方面没有真正的经验,我作为实习生被分配了这项任务,因此我们将不胜感激。

【问题讨论】:

    标签: android service screen wakelock android-wake-lock


    【解决方案1】:

    回答是否定的,你不能。正如您所说,这样做的唯一方法是使用已弃用的 api。作为替代方案,您可以使用具有透明主题的活动,但如果用户例如按下主页按钮并且活动不再处于前台,那么您无论如何都会松动。

    【讨论】:

    • 我的主管告诉我,他们目前正在使用应用程序来执行此操作,但由于许可问题不能再执行此操作,所以一定有办法吗?是否可以使用已弃用的 api 并创建仍然可以在设备上运行的应用程序?
    • 是的,您可以使用已弃用的 api,但您不知道将来是否会更改行为或从下一个版本中删除调用。您可以使用它们,但最终没有任何保证。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-25
    相关资源
    最近更新 更多