【问题标题】:Screen Dim Event / User Inactivity屏幕变暗事件/用户不活动
【发布时间】:2018-09-15 20:18:20
【问题描述】:

首先,我想告诉你,我想做什么:我想在我的 Android 设备上获得一些 iOS 的行为。当然,这只是一个小细节。

我所说的在 iOS 上的行为是这样的:

  1. 用户不使用设备

  2. 一段时间后,设备将屏幕变暗。

  3. 现在用户必须点击显示屏上的某个位置才能重新激活设备。

  4. 这是我想要的行为如果用户点击屏幕,屏幕

    将再次变得活跃。点击本身不会导致任何其他操作。

在 Android 上,这几乎是相同的行为。除了第 4 步:如果用户在屏幕上点击以阻止待机,则点击已经在应用程序或主屏幕或您所在的任何位置引起操作。

我决定开发一个小型无障碍服务。当设备处于非活动状态并使其显示变暗时,此服务将显示覆盖。单击叠加层只会将其关闭。叠加层本身没问题,它已经在工作了。

我的问题是:我不知道如何找出显示器何时因不活动而变暗。

我的想法是:

  1. 收听 Intent.ACTION_SCREEN_OFF 事件 (https://developer.android.com/reference/android/content/Intent)。 --> 它正在工作。但为时已晚 :-( 触发事件时屏幕已经完全关闭。

  2. 检查设备是否处于非活动/空闲状态。 --> 有没有可能得到整个设备的状态?我还没有找到任何相关信息。

或者也许有人有完全不同的想法?

感谢您的帮助。

问候

帕特里克

【问题讨论】:

    标签: android


    【解决方案1】:

    您可以保持窗口屏幕打开并使用 TimerTask,每隔 5 秒手动将窗口的亮度调暗 %...

    然后当点击叠加层时,增加亮度

    【讨论】:

    • 谢谢,听起来不错。但是我还有一个问题:我不知道什么时候可以开始调暗屏幕。当设备变为非活动状态时,我需要该信息。我真的不知道如何得到它..
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-09
    相关资源
    最近更新 更多