// 解锁
KeyguardManager manager = (KeyguardManager) getSystemService(KEYGUARD_SERVICE);
if( manager.inKeyguardRestrictedInputMode() ){
//处于锁定界面,界面则通过KeyguardLock类方法来解锁
KeyguardLock keyguard = manager.newKeyguardLock(getLocalClassName());
keyguard.disableKeyguard();
}解锁需要权限:
<uses-permission android:name="android.permission.DISABLE_KEYGUARD"/>
//点亮屏幕
PowerManager pm = (PowerManager)getSystemService(POWER_SERVICE);
mWakelock = pm.newWakeLock(PowerManager.ACQUIRE_CAUSES_WAKEUP |PowerManager.SCREEN_DIM_WAKE_LOCK, "SimpleTimer");
mWakelock.acquire();
//.......
mWakelock.release();点亮屏幕需要权限:
<uses-permission android:name="android.permission.WAKE_LOCK"/>
解决方案 »
- 关于android中gps定位的问题
- 怎么让Notification添加的状态图标栏上加上数字,像安卓市场提示有几个应用要升级一样
- 如何把写好的android程序放到手机里面执行?
- 请教:如何使对话框既使用xml布局,又能用R.style.dialog设置
- android-SD卡-查看模拟卡中文件夹里的文件
- 关于android的应用开发最终回归的看法
- 单击按钮,在屏幕上画一条直线
- 如何响应 乐phone的默认“返回”按钮
- Android中viewgroup中控件置顶问题
- 保存在SD卡上的音频文件怎么以byte[]形式读取?
- 请问android的jdk相关源代码是在哪个目录下的?
- ProgressDialog的message在设置之后能否获得?
onCreate方法时使用
requestWindowFeature(Window.FEATURE_NO_TITLE); //hide title
Window win = getWindow();
WindowManager.LayoutParams winParams = win.getAttributes();
winParams.flags |= (WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD
| WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
| WindowManager.LayoutParams.FLAG_ALLOW_LOCK_WHILE_SCREEN_ON
| WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
setRequestedOrientation(0);在OnResume时使用
protected void onResume() {
super.onResume();
acquireWakeLock();
}
private void acquireWakeLock() {
if (mWakelock == null) {
Log.i(TAG, "Activity begin start ");
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
mWakelock = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, this.getClass().getCanonicalName());
mWakelock.acquire();
}在onPause
protected void onPause() {
super.onPause();
......
releaseWakeLock();
}
private void releaseWakeLock() {
if (mWakelock != null && mWakelock.isHeld()) {
mWakelock.release();
mWakelock = null;
}
希望对LZ有所帮助!