android 不休眠 命令,android系统添加永不休眠选项

修改点:

-    604800000

+    0

private void updateLockScreenTimeout() {

synchronized (mScreenLockTimeout) {

boolean enable = (mAllowLockscreenWhenOn && mAwake &&

mKeyguardDelegate != null && mKeyguardDelegate.isSecure(mCurrentUserId));

if (mLockScreenTimerActive != enable) {

if (enable) {

if (localLOGV) Log.v(TAG, "setting lockscreen timer");

mHandler.removeCallbacks(mScreenLockTimeout); // remove any pending requests

if (mLockScreenTimeout != 0) {//time is 0 never sleep,not is 0 keep

mHandler.postDelayed(mScreenLockTimeout, mLockScreenTimeout);

}

} else {

if (localLOGV) Log.v(TAG, "clearing lockscreen timer");

mHandler.removeCallbacks(mScreenLockTimeout);

}

mLockScreenTimerActive = enable;

}

}

}

private void updateUserActivitySummaryLocked(long now, int dirty) {

// Update the status of the user activity timeout timer.

if ((dirty & (DIRTY_WAKE_LOCKS | DIRTY_USER_ACTIVITY

| DIRTY_WAKEFULNESS | DIRTY_SETTINGS)) != 0) {

mHandler.removeMessages(MSG_USER_ACTIVITY_TIMEOUT);

long nextTimeout = 0;

if (mWakefulness == WAKEFULNESS_AWAKE

|| mWakefulness == WAKEFULNESS_DREAMING

|| mWakefulness == WAKEFULNESS_DOZING) {

final int sleepTimeout = getSleepTimeoutLocked();

final int screenOffTimeout = getScreenOffTimeoutLocked(sleepTimeout);

final int screenDimDuration = getScreenDimDurationLocked(screenOffTimeout);

final boolean userInactiveOverride = mUserInactiveOverrideFromWindowManager;

mUserActivitySummary = 0;

if (mLastUserActivityTime >= mLastWakeTime) {

nextTimeout = mLastUserActivityTime

+ screenOffTimeout - screenDimDuration;

if (now < nextTimeout) {

mUserActivitySummary = USER_ACTIVITY_SCREEN_BRIGHT;

} else {

nextTimeout = mLastUserActivityTime + screenOffTimeout;

if (now < nextTimeout) {

mUserActivitySummary = USER_ACTIVITY_SCREEN_DIM;

}

}

}

if (mUserActivitySummary == 0

&& mLastUserActivityTimeNoChangeLights >= mLastWakeTime) {

nextTimeout = mLastUserActivityTimeNoChangeLights + screenOffTimeout;

if (now < nextTimeout) {

if (mDisplayPowerRequest.policy == DisplayPowerRequest.POLICY_BRIGHT

|| mDisplayPowerRequest.policy == DisplayPowerRequest.POLICY_VR) {

mUserActivitySummary = USER_ACTIVITY_SCREEN_BRIGHT;

} else if (mDisplayPowerRequest.policy == DisplayPowerRequest.POLICY_DIM) {

mUserActivitySummary = USER_ACTIVITY_SCREEN_DIM;

}

}

}

if (mUserActivitySummary == 0) {

if (sleepTimeout >= 0) {

final long anyUserActivity = Math.max(mLastUserActivityTime,

mLastUserActivityTimeNoChangeLights);

if (anyUserActivity >= mLastWakeTime) {

nextTimeout = anyUserActivity + sleepTimeout;

if (now < nextTimeout) {

mUserActivitySummary = USER_ACTIVITY_SCREEN_DREAM;

}

}

} else {

mUserActivitySummary = USER_ACTIVITY_SCREEN_DREAM;

nextTimeout = -1;

}

}

if (mUserActivitySummary != USER_ACTIVITY_SCREEN_DREAM && userInactiveOverride) {

if ((mUserActivitySummary &

(USER_ACTIVITY_SCREEN_BRIGHT | USER_ACTIVITY_SCREEN_DIM)) != 0) {

// Device is being kept awake by recent user activity

if (nextTimeout >= now && mOverriddenTimeout == -1) {

// Save when the next timeout would have occurred

mOverriddenTimeout = nextTimeout;

}

}

mUserActivitySummary = USER_ACTIVITY_SCREEN_DREAM;

nextTimeout = -1;

}

if(mScreenOffTimeoutSetting != 0){//add never screen off

if (mUserActivitySummary != 0 && nextTimeout >= 0) {

Message msg = mHandler.obtainMessage(MSG_USER_ACTIVITY_TIMEOUT);

msg.setAsynchronous(true);

mHandler.sendMessageAtTime(msg, nextTimeout);

}

} else {

mUserActivitySummary |= USER_ACTIVITY_SCREEN_BRIGHT;

}

} else {

mUserActivitySummary = 0;

}

if (DEBUG_SPEW) {

Slog.d(TAG, "updateUserActivitySummaryLocked: mWakefulness="

+ PowerManagerInternal.wakefulnessToString(mWakefulness)

+ ", mUserActivitySummary=0x" + Integer.toHexString(mUserActivitySummary)

+ ", nextTimeout=" + TimeUtils.formatUptime(nextTimeout));

}

}

}

"5分钟"

"10分钟"

"30分钟"

+       "永不休眠"

"永不"

5 minutes

10 minutes

30 minutes

+               never

600000

1800000

+               

+               0

android:title="@string/screen_timeout"

android:summary="@string/summary_placeholder"

android:entries="@array/screen_timeout_entries"

-        android:entryValues="@array/screen_timeout_values" />

+        android:entryValues="@array/screen_timeout_values"

+               android:defaultValue="0"/>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值