Можно ли перезагрузить телефон с Android SDK или NDK? - PullRequest
3 голосов
/ 11 мая 2010

Можно ли программно перезапустить телефон из приложения (службы), работающего поверх виртуальной машины Dalvik?

Если SDK не предоставляет эту функцию, то как насчет использования NDK и вызова некоторых функцийпредоставляется ядром?Я знаю, что этот вариант не является предпочтительным (недостаточно стабильные библиотеки), но если это единственный вариант, я должен рассмотреть это также.

Ответы [ 3 ]

3 голосов
/ 25 октября 2012

powermanager.reboot доступен начиная с уровня API 8. требуется разрешение на перезагрузку

3 голосов
/ 13 мая 2010

Надеюсь, что нет. : -)

Если бы была возможность перезагрузить телефон по желанию, вредоносное приложение могло бы сделать это через определенные промежутки времени и сделать вашу жизнь несчастной.

NDK не предоставляет вам здесь никаких дополнительных возможностей, потому что Android полагается на границы процессов и права доступа Linux для обеспечения безопасности, а не на изолированную программную среду Java.

Почему ты хочешь это сделать? Может быть, есть какой-то другой способ сделать то, что вы ищете.

1 голос
/ 13 мая 2010

Я нашел правильные системные вызовы в Linux, которые бы сработали, и после нескольких часов возни с путями NDK / JNI мне наконец-то удалось вызвать функцию. В результате мне понадобилось разрешение супер-пользователя. Я вроде догадался, что это будет так.

Есть ли способ преодолеть эту проблему? Кроме рутирования телефона, которого я все еще пытаюсь избежать.

Все еще возможно перезагрузить телефон с помощью adb. Я предполагаю, что это связывается с ddmd или каким-либо другим демоном, поэтому можно ли было как-то использовать ту же функциональность?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...