Я пытаюсь использовать метод goToSleep()
, чтобы перевести телефон в глубокий сон.
Программа была установлена в каталог / system / app, поэтому Android System Info сообщает, что это системное приложение, но если я попробую вызвать goToSleep (), я получу эту ошибку
Ни у пользователя 10085, ни у текущего процесса нет android.permission.DEVICE_POWER.
Выборка кода:
IPowerManager mPowerManager = IPowerManager.Stub.asInterface(ServiceManager.getService("power"));
long time = SystemClock.uptimeMillis() + 1000;
try {
mPowerManager.goToSleep(time);
} catch (RemoteException e) {
Toast.makeText(getApplicationContext(), "error: " + e.toString(), Toast.LENGTH_LONG).show();
e.printStackTrace();
}
AndroidManifest.xml
<permission android:name="android.permission.DEVICE_POWER"/>
<uses-permission android:name="android.permission.DEVICE_POWER" />
<permission android:name="android.permission.REBOOT"/>
<uses-permission android:name="android.permission.REBOOT"/>
Как я понимаю, если я запускаю системное приложение, то я могу получить доступ ко всем функциям скрытия Android или системным функциям, или я ошибаюсь?
То, что я пытаюсь сделать, чтобы приложение запускалось как системное приложение:
- скопировать файл в / system / app
- чоун 0: 0
- chmod 4755
- chmod ugo + s
Возможно, кто-то еще уже сталкивался с этой проблемой. Любые предложения будут полезны