java - 应用程序中的 Android 屏幕保护程序(如果未使用)

标签 java android eclipse screen screensaver

我创建了一个安卓应用。屏幕永不关闭:

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

现在我想在 5 分钟或其他时间没有按下屏幕时显示图片。应用程序不应关闭,当按下图像时应用程序应打开。

我怎样才能意识到这一点?

最佳答案

我不鼓励您采用这种方法。用户希望在其设备上的各种应用程序之间获得一致的用户体验,并且可能通过指定 sleep 超时或 displaying a daydream as introduced in Android 4.2 来偏好设备的 sleep 方式。 .

如果您希望为用户提供显示与您的应用关联的屏幕保护程序的选项,我建议在您的应用中包含 Daydream 并以其他方式确认用户的偏好。

话虽这么说,如果您无法使用 Daydream,您可以观察该应用程序是否正在使用。我想到两件事:

  1. 让您的 Activity 的 Root View 拦截触摸事件,以观察是否有任何 subview 被触摸。
  2. 观察 Activity 的 onPause()onResume() 以确认 Activity 仍在显示。

然后您可以通过使用 postDelayed(Runnable action, long delayMillis) 将其发布到 View 来调用 Runnable ,当 Activity 暂停或应使用 removeCallbacks(Runnable) 重置计时器时要小心删除它.

关于java - 应用程序中的 Android 屏幕保护程序(如果未使用),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21513594/

相关文章:

android - 我怎样才能永远重复过渡?

android - 如何使基于 GluonMobile 的应用兼容新的 Google 64 位架构策略?

linux - Eclipse - 无法下载版本 3.6.1

java - 不能在 ArrayList 中使用对象的 toString() 方法

java - Oracle CEP 如何工作?

java - Kafka 读取字段时出错 'correlation_id' : java. nio.BufferUnderflowException

php - 将 android 设备连接到 SqlServer 2005 时出现 JSON 解析错误

eclipse - 未发布的 WTP 部署失败

java - Android:类文件与源代码不匹配

java - 在编译时检查属性名称的 Web 模板引擎