开始在手机上开发应用了。但是发现与机顶盒不一样,手机因为电池使用有限,所以隔段时间会锁屏,很影响开发以及使用。今天在网上查了些资料,代码上实现“禁止锁屏,保持高亮”大致有以下几种方法:
1、在每个Activity中的onCreate()中加入代码:
1
2
3
4
5
6
7
8
9
|
@Override
protected
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.controller);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
//应用运行时,保持屏幕高亮,不锁屏
findViews();
setListeners();
init();
}
|
2、在每个Activity中的onResume以及onPause中加入代码:
1
2
3
4
5
6
7
8
9
10
|
//onResume 中启用
wakeLock = ((PowerManager) getSystemService(POWER_SERVICE))
.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK
| PowerManager.ON_AFTER_RELEASE, TAG);
wakeLock.acquire();
//onPause 中禁用
if
(wakeLock !=
null
) {
wakeLock.release();
}
|
在第2个方法中,需要加入权限:
1
|
<uses-permission android:name=
"android.permission.WAKE_LOCK"
/>
|
3、在每个Activity中加入代码:
1
|
mContentResolver = getContentResolver();
|
1
2
3
4
5
6
7
8
9
|
setLockPatternEnabled(
false
);
public
void
setLockPatternEnabled(
boolean
enabled) {
setBoolean(android.provider.Settings.System.LOCK_PATTERN_ENABLED,
enabled);
}
private
void
setBoolean(String systemSettingKey,
boolean
enabled) {
android.provider.Settings.System.putInt(mContentResolver,
systemSettingKey, enabled ?
1
:
0
);
}
|
在第3个方法中,需要加入权限:
1
|
<uses-permission android:name=
"android.permission.WRITE_SETTINGS"
/>
|