我想通过程序执行这个shell命令。我该怎么办?
cd C:\android-sdk\platform-tools
adb shell
su
mount -t rfs -o remount,rw /dev/block/stl9 /system
cp /sdcard/MyApp.apk /system/app/MyApp.apk
答案 0 :(得分:7)
我们可以使用Runtime类执行shell命令。
Runtime.getRuntime().exec("ls");
上面的代码将为给定命令 ls 创建一个本机进程,将返回与进程对象相同的进程。
有关它的更多详细信息Check here
答案 1 :(得分:2)
您应该在.bat
文件中编写您使用的确切语法,然后执行它。
答案 2 :(得分:1)
看来你在微软电台上,所以考虑使用批处理会给你这个:
第一种方法:留在您的工作站并发送有用的命令
cd C:\android-sdk\platform-tools
adb shell "su -c 'mount -o rw,remount /system'"
adb shell "su -c 'cp /sdcard/MyApp.apk /system/app/MyApp.apk'"
adb shell "su -c 'mount -o ro,remount /system'"
唯一的问题是你将发射和关闭3个炮弹,但它并不是真的和问题。
第二种方法:留在你的电台上发送sdcard上的sh脚本并执行它
cd C:\android-sdk\platform-tools
adb push myscript.sh /sdcard/
adb shell "su -c 'sh /sdcard/myscript.sh'"
使用" myscript.sh"包含:
#!/system/bin/sh
mount -o rw,remount /system
cp /sdcard/MyApp.apk /system/app/MyApp.apk
mount -o ro,remount /system
请记住,在Microsoft工作站上创建的Android shell脚本已经结束了CRLF行! 你需要让LF只在系统上的UNIX上结束你的行!