Когда я положил эту строку в свое тестовое приложение, Runtime.getRuntime().exec("uiautomator dump")
, файл .xml не был сброшен. Я уверен, что проверил правильное местоположение.Сброс uiautomator в Runtime.getRuntime(). Exec() не работает
Я попытался отладить мое приложение, поставив точку останова. Когда он достигнет точки останова, I adb shell
на терминале, чтобы войти в устройство, а затем вручную запустите uiautomator dump
с терминала, тогда он говорит killed
, и файл .xml не был создан.
adb shell uiautomator dump
только производит .xml-файл, когда я убил свое приложение и запускаю эту команду с терминала.
Это проблема разрешения или доступности?
См. Также [Когда Runtime.exec() не будет] (http://www.javaworld.com/article/2071275/core-java/when-runtime-exec---won-t.html) для много хороших советов по правильному созданию и обработке процесса. Затем проигнорируйте это, ссылаясь на 'exec' и используйте' ProcessBuilder' для создания процесса. убедившись, что «String arg» в 'String [] args' будет зависеть от таких вещей, как путь с пробелами в нем. –