我尝试访问sdcard中的文件夹并安装myapp.apk,我使用以下代码:
Runtime.getRuntime().exec("cd sdcard/.yasmin"); Runtime.getRuntime().exec("adb install tefli.apk");
但不幸的是我有这个错误:
05-11 11:09:57.925: WARN/System.err(1399): java.io.IOException: Error running exec(). Commands: [cd,sdcard/.yasmin] Working Directory: null Environment: null
任何人请有个主意.
提前致谢.
解决方法
我不确定这会解决你的问题,但AFAIK,每次调用exec()都会创建一个新的shell.可能的解决方案是执行以下操作:
>使用以下方法获取exec()的进程:Process p = Runtime.getRuntime().exec(…).
>使用p.getInputStream();抓取进程inputStream.
>运行第二个命令.
另请注意,您尝试访问sdcard,就像在根文件夹和硬编码路径中一样,请考虑以下事项:
Process p = Runtime.getRuntime().exec("cd /sdcard/.yasmin");
甚至更好:
Process p = Runtime.getRuntime().exec("cd " + Environment.getExternalStorageDirectory() + "/.yasmin");
希望它会有所帮助!