Возможно ли выполнить команды adb через приложение для Android?

Может ли кто-нибудь сказать, могут ли команды adb выполняться через мое приложение для Android. Если можно выполнить, как это можно реализовать?

Вы можете сделать это с помощью этого:

 Process process = Runtime.getRuntime().exec("your command"); BufferedReader bufferedReader = new BufferedReader( new InputStreamReader(process.getInputStream())); 

Не забудьте окружить его инструкцией try and catch.

Редактировать:

@Phix прав, ProcessBuilder будет лучше использовать.

Обычные приложения для Android имеют разные привилегии для процессов, запущенных через adb , например, процессы, запущенные через adb , разрешены для захвата экрана, тогда как обычных приложений нет. Таким образом, вы можете выполнять команды из своего приложения через Runtime.getRuntime().exec() , но у них не будет таких же привилегий, как если бы вы выполнили из adb shell .

adb shell, вызванный в Runtime.getRuntime (). exec не работает под пользователем оболочки. Он предоставляет оболочку, но с тем же владельцем процесса (например, u0_a44). Вот почему вся команда не работает.

проведение

 Runtime.getRuntime().exec("adb shell input keyevent 120"); 

Я получил следующую ошибку: java.io.IOException: Не удается запустить программу «adb»: error = 13, Permission denied.

проведение

 Runtime.getRuntime().exec("adb shell input keyevent 120"); 

Нет ошибки, но в то же время мой запрос не обрабатывается, чтобы сделать снимок экрана.

Я узнал, что это работало в более ранних версиях Android, но позже оно было удалено. Хотя я не могу предоставить источник здесь, почему он не работает.

Надеюсь, это помогает кому-то вроде меня, который пытается использовать этот подход, чтобы сделать снимок экрана, когда приложение не находится на переднем плане.

  • Android - нижний колонтитул прокручивается с экрана при использовании в CoordinatorLayout
  • Что такое намерение в Android?
  • выполнить команду оболочки из android
  • Можно ли заполнить ListView снизу?
  • notifyDataSetChanged () делает обновление списка и прокручивает подсказки назад
  • Кнопка «Отменить назад», чтобы действовать как кнопка «домой»
  • Как resize шрифта и цвет текста?
  • Как использовать перехватчик для добавления заголовков в «Дооснащение 2.0»
  • viewpager setonpagechangelistener устарел
  • Android SDK MMS
  • Допустимые значения для android: fontFamily и на что они направлены?
  • Давайте будем гением компьютера.