在android中,申請wakelock可以讓你的程序持續執行即使手機進入睡眠模式,比較實用的是比如背景有網絡功能,可以保證操作持續進行.
方法: 在操作之前加入
powermanager
pm = (powermanager) mcontext.getsystemservice(context.power_service);
wakelock =
pm.newwakelock(powermanager.partial_wake_lock, constants.tag);
wakelock.acquire();
其中newwakelock有兩個參數,第一個參數定義了行為,第二個參數是調試的那個tag,可以定義為類名。第一個參數取值如下:
flag
value
cpu
screen
keyboard
<code></code>
on*
off
on
dim
bright
别忘了在操作完畢之後釋放掉
if (wakelock !=
null) {
wakelock.release();
wakelock = null;
}
還有,要權重限:<uses-permission android:name="android.permission.wake_lock"/>
----------------------------------------------------------------------------------------------------------------------------
另一種方法是
@override
protected
void
oncreate(bundle icicle) {
super
.oncreate(icicle);
// 經測試這個還是比較好用的,多媒體播放設定不待機。
getwindow().addflags(windowmanager.layoutparams.flag_keep_screen_on);
}
這個參數也是保持螢幕一直活動不會進入休眠狀态,省電一些比上個安全。