Android手机保持屏幕高亮方法

时间:2021-11-18 02:13:46

一开始接触android应用项目时,在项目快上线时策划要求加个高亮,每次都是直接从网上百度一下,现在做游戏了,却还是这个需求,这里备份一下方便后续的查找,毕竟是自己写好且验证没问题的 :)

首先,在Activity里添加一下代码:

成员变量:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
private PowerManager.WakeLock wakeLock = null;
重写父类Activity的两个方法并添加一下逻辑:
@Override
  public void onResume() {
    super.onResume(); 
    acquireWakeLock(this);
  }
  @Override
  public void onPause() {
    super.onPause();
    releaseWakeLock();
  }
  public void acquireWakeLock(Context context) {
    if (wakeLock == null) {
      PowerManager powerManager = (PowerManager) (context
          .getSystemService(Context.POWER_SERVICE));
      wakeLock = powerManager.newWakeLock(
          PowerManager.SCREEN_DIM_WAKE_LOCK, "My Tag");
      wakeLock.acquire();
    }
  }
  public void releaseWakeLock() {
    if (wakeLock != null && wakeLock.isHeld()) {
      wakeLock.release();
      wakeLock = null;
    }
  }

然后,在AndroidManifest.xml里添加如下权限即可:

?
1
<uses-permission android:name="android.permission.WAKE_LOCK" />