Modify svc power command so it pokes the wake lock when called. This will ensure screen is not asleep if stayon is requested.
diff --git a/cmds/svc/src/com/android/commands/svc/PowerCommand.java b/cmds/svc/src/com/android/commands/svc/PowerCommand.java
index 2b54f54..e021012 100644
--- a/cmds/svc/src/com/android/commands/svc/PowerCommand.java
+++ b/cmds/svc/src/com/android/commands/svc/PowerCommand.java
@@ -16,7 +16,10 @@
package com.android.commands.svc;
+import android.os.Binder;
+import android.os.IBinder;
import android.os.IPowerManager;
+import android.os.PowerManager;
import android.os.ServiceManager;
import android.os.RemoteException;
import android.os.BatteryManager;
@@ -60,7 +63,10 @@
IPowerManager pm
= IPowerManager.Stub.asInterface(ServiceManager.getService(Context.POWER_SERVICE));
try {
+ IBinder lock = new Binder();
+ pm.acquireWakeLock(PowerManager.FULL_WAKE_LOCK, lock, "svc power");
pm.setStayOnSetting(val);
+ pm.releaseWakeLock(lock);
}
catch (RemoteException e) {
System.err.println("Faild to set setting: " + e);