2010年8月23日 星期一

Android ScreenSaver Disable

在開發App時候,為了不讓他自動變成待機畫面
去找了一些關於ScreenSaver的文件
我找到了兩種方式。
方法一:
private KeyguardManager.KeyguardLock mKL;

在onCteate()加入
KeyguardManager km = (KeyguardManager)getSystemService(Context.KEYGUARD_SERVICE);
mKL = km.newKeyguardLock("phone");
再新增這個方法
private void disableKeyguard(boolean disable) {
if (disable) {
mKL.disableKeyguard();//取消
} else {
mKL.reenableKeyguard();//重新啟動
}
}

然後複寫下面兩個
@Override
protected void onStart() {
super.onStart();
disableKeyguard(true);
}

@Override
public void onStop() {
super.onStop();
disableKeyguard(false);
}
方法二:
直接在onCreate新增這個
getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
| WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD
| WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON
| WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);

沒有留言:

張貼留言

搜尋此網誌