Я разрабатываю приложение Java и C для Android, которому требуется root-идентификатор для включения большей части его функциональности. Таким образом, я рутировал эмулятор Android с помощью SuperSu и вызвал Процесс p = Runtime.getRuntime (). Exec ("su") в Java-коде моего приложения в отдельном потоке, чтобы открыть новый процесс, запущенный от имени пользователя root.
Однако кажется, что я могу запускать команды терминала в этом процессе только в соответствии с https://su.chainfire.eu/#how-call, чего я не хочу. Вместо этого я хочу, чтобы процесс выполнял часть кода Java и C.
Есть ли способы запустить часть моего приложения от имени пользователя root?
NB: Код, который я хочу запустить в этом процессе, включает открытие сырого сокета, создание и отправку пакетов.




Только не с su. Или с помощью sudo. Если вам нужен root uid, тогда ваша программа должна запускаться от root.