install apk in background using busybox
-
03-07-2021 - |
Pregunta
can i install apk in background using busybox on rooted device ???
i see something like that but it doesn't work
process install;
CommandCapture command = new CommandCapture(0, "chmod 777 /data/app");
RootTools.getShell(true).add(command).waitForFinish();
CommandCapture command2 = new CommandCapture(0, "chmod 777 /system/xbin/busybox");
RootTools.getShell(true).add(command2).waitForFinish();
install = Runtime.getRuntime().exec("/system/xbin/busybox install " + Environment.getExternalStorageDirectory() + "/Download/" + "xxx.apk /data/app/xxx.apk");
Solución
If you run su -c pm install myapp.apk
in a root shell, you should be able install in the background (note the 'pm') part. This has nothing to do with busybox, you can use any shell and you certainly don't need to change permission of /data/app
.
Otros consejos
without using busybox
install = Runtime.getRuntime().exec("su");
DataOutputStream os = new DataOutputStream(install.getOutputStream());
os.writeBytes("pm install "+APKFile.apk+"\n");
os.writeBytes("exit\n");
os.flush();
install.waitFor();
It looks you use two paths for your busybox binary. First you chmod
it in /system/xbin
, but then you invoke it from system/bin
. Ensure you use right path. And chmod 777 /data/app
looks VERY BAD.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow