【发布时间】:2014-01-04 20:16:42
【问题描述】:
我正在尝试创建一个程序以在屏幕打开时保持键盘背光灯亮起。我对 android 很陌生,但我已经编程 java 6 个月了。我不确定如何使用常量 Full_Wake_Lock 来保持 kb lgiht 开启。
【问题讨论】:
标签: android keyboard backlight
我正在尝试创建一个程序以在屏幕打开时保持键盘背光灯亮起。我对 android 很陌生,但我已经编程 java 6 个月了。我不确定如何使用常量 Full_Wake_Lock 来保持 kb lgiht 开启。
【问题讨论】:
标签: android keyboard backlight
您需要启动一个Service。
然后您必须在 onCreate 中获取唤醒锁,然后在 onDestroy 中释放 WakeLock。也就是说,如果您试图从后台保持唤醒锁。
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK, "My Tag");
wl.acquire();
就是得到它,然后释放它:
wl.release();
当然,您可能希望在任何方法之外的类主体内声明wl。
【讨论】:
FULL_WAKE_LOCK 至少在接下来的几个Android更新中。如果我没记错的话,API 17 是 4.2,这是在极少数设备上的。此外,不推荐使用的方法通常仍然在更新版本的 Android 中起作用(无论如何,根据我的经验)。
之前:wakeLock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK, "DoNotDimScreen");
之后:wakeLock = pm.newWakeLock(PowerManager.ON_AFTER_RELEASE, "DoNotDimScreen");
【讨论】: