Already set android.permissions.DEVICE_POWER in manifest of my app. Still complains that neither user nor process have this permission when I call PowerManager.gotoSleep(n) within activity. What other settings are required for this to work? Thanks This is on My Samsung ATT phone
Asked
Active
Viewed 8,856 times
3 Answers
3
DEVICE_POWER is a level 2 permission and protected permission and hence it is not provided to any app which request it via manifest, to get this permission successfully we need to have Platform certificate in our make file and shared user id set in manifest as system...
LOCAL_CERTIFICATE := platform (makefile entry)
android.uid.system (shared user id )
There isnt a way around this i have looked around havent found any ...
-
1Hi. Do you give me a reference where I can get in details step about this or would you please describe in more details. – Farhana Haque Sep 15 '11 at 07:12
-
Is there a way to do it on a rooted device? – Utsav Gupta Sep 15 '14 at 04:43
-
@user2103379 check the solution given by "repat" below . cheers. – amIT Sep 15 '14 at 06:11
2
In old version, I read that it is a signature-protected permission, i.e. only apps that got signed as system apps are allowed to.

yogsma
- 10,142
- 31
- 97
- 154
-
What is involved in getting app signed as system app? what if device is rooted? Thanks – Androider Apr 19 '11 at 02:42
-
-
-
Also are there other ways to put device in sleep mode programatically? Like issuing an intent? Thanks – Androider Apr 19 '11 at 02:56
1
java -jar signapk.jar platform.x509.pem platform.pk8 bin/TestApp-unsigned.apk bin/TestApp.apk
I had the exact same problem and this worked for me. Get signapk.jar from https://github.com/appium/sign. the repository also includes the Android test certificate, which works e.g. with a rooted nook.

repat
- 320
- 3
- 12