【发布时间】:2013-12-17 22:38:18
【问题描述】:
我正在尝试以编程方式卸载和安装 USB 设备。我可以使用以下命令在 adb 中执行此操作:
umount /mnt/usb1
mount -t vfat -o rw /dev/block/sdb /mnt/usb1
但是当我尝试从我的应用程序执行这些命令时,它不起作用。这是我使用的代码:
Process proc = Runtime.getRuntime().exec(
new String[] { "/system/xbin/su", "-c",
"umount /mnt/usb1" });
proc.waitFor();
Process pr = Runtime.getRuntime().exec(new String[] {
"/system/xbin/su", "-c",
"mount -t vfat -o rw /dev/block/sdb /mnt/usb1" });
pr.waitFor();
exec() 方法的描述说:“在单独的本机进程中执行指定的命令及其参数。”所以我认为该命令有效,但在不同的进程中。在我的应用程序运行的过程中,没有任何影响。所以我想在我的应用运行的过程中执行这些命令。
感谢question,我可以获得进程 ID。有没有办法使用这个进程ID来调用当前进程并执行shell命令?
【问题讨论】:
-
嗨,您是否以编程方式解决了它?