Так для этого и существуют "разрешения". Я смотрю возможности приложения при установке и сам принимаю решение о том, ставить его или нет. А так получается, что меня ограничивают в свободе выбора и толкают фактически на взлом устройства.
В любом случае спасибо за помощь.
А без SuperSU вообще никаких вариантов? На "чистом" устройстве?
Это тоже не прокатит?: https://stackoverflow.com/questions/3635101/how-to-sign-android-app-with-system-signature
С помощью Runtime.getRuntime()?
TJRuntime.JavaClass.getRuntime().exec(StringToJString('su -c reboot'));
Я пробовал в разных вариациях, у меня error exec при выполнении. Работающий пример никак не могут найти.
Спасибо. Я подозревал, что должно быть нечто подобное, перелопатил кучу библиотек, но до Helpers не дошел :)))
К сожалению, то что я приводил выше по аналогии с явой не заработало. Вылетает.
Доступ ставил как советуют для явы: reboot и wake lock
Не могу разобраться, каким образом можно выполнить перезагрузку или выключение андроид-устройства.
Для Java существует класс PowerManager, но в JNI такого я не нашел.
Подскажите пожалуйста решение.
Здравствуйте.
Столкнулся с проблемой вылета приложения при работе AudioManager'а в Lollipop 5.0.1 (выше не проверял). При этом, в 4.2.2 и 4.4.2 всё отлично работает.
Код у меня аналогичный примеру выше. Есть у кого-нибудь идеи по решению такой проблемы?
procedure TForm1.Button3Click(Sender: TObject);
var
AudioObj: JObject;
AudioManager: JAudioManager;
begin
AudioObj := TAndroidHelper.Activity.getSystemService(TJActivity.JavaClass.AUDIO_SERVICE);
AudioManager := TJAudioManager.Wrap((AudioObj as ILocalObject).GetObjectID);
AudioManager.setStreamVolume(TJAudioManager.JavaClass.STREAM_MUSIC, 15, 0);
end;