您的位置:首页 > 移动开发 > Android开发

android通过电源管理保持屏幕常亮

2016-03-22 10:36 495 查看
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.os.PowerManager;
import android.os.PowerManager.WakeLock;

public class MainActivity extends Activity {

WakeLock wakeLock;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
acquireWakeLock();
}

@Override
protected void onDestroy() {
releaseWakeLock();
super.onDestroy();
}

private void acquireWakeLock() {
if (wakeLock == null) {
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
wakeLock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK, "MyTag");
wakeLock.acquire();
}
}

private void releaseWakeLock() {
if (wakeLock != null && wakeLock.isHeld()) {
wakeLock.release();
wakeLock = null;
}
}

}

AndroidManifest中加上权限:

<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.DEVICE_POWER" />eclipse中会报错:
Permission is only granted to system apps只要clean一下就好了。

关于
wakeLock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK, "MyTag");
中的Flag,API中解释如下:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android