Не удалось скопировать apk в папку приложения system-priv с помощью команды оболочки в java android
Мне трудно скопировать apk из папки /data/app в system/priv-app в моем приложении. Устройство внедрено, и я могу копировать в другие папки, но не в системную.
Я также попытался скопировать свое приложение в папку system/priv-app, но все еще не могу скопировать.
Я могу копировать с помощью adb, и он отлично работает.
adb root
adb mount -o rw,remount /system
adb cp -r data/app/packagename system/priv-app/packagename
adb reboot
вот мой код на java
Runtime.getRuntime().exec("cp -r /data/app/com.test.myapp /system/priv-app/MyApp");
Я также пробовал другие библиотеки, чтобы проверить, рутировано ли устройство, и все они сообщают о рутировании, но все же простая задача, подобная этой, не выполняется с
java.io.IOException: ошибка записи: EPIPE (сломанный канал)
try
{
Process p = Runtime.getRuntime().exec("su", null, new File("/"));
DataOutputStream os = new DataOutputStream( p.getOutputStream());
os.writeBytes("pwd\n");
os.writeBytes("exit\n");
os.flush();
p.waitFor();
p.destroy();
}
catch (Exception e)
{
return false;
}
Нужно ли указывать корневого владельца приложения?