繁体   English   中英

Android:如何从我的APK中以RW方式挂载文件系统? (当然是扎根的)

[英]Android: how to mount filesystem in RW from within my APK? (rooted, of course)

我正在尝试编写一个在运行时将某些内容复制到/ system分区的应用程序。 我已经通过请求SU权限实现了以root用户身份运行终端命令的功能。 我可以成功运行许多命令(在向SuperUser授予权限请求后)。 但是,当我尝试将/ system重新安装为读/写时,什么也没发生。 我没有收到错误或崩溃,该命令似乎通过得很好,但是该分区保持为只读状态。 这是我正在运行的命令(Droid X): mount -o rw,remount -t ext3 /dev/block/mmcblk1p21 /system ,如果我从Terminal运行相同的命令,它会很好地工作。 这是我的代码,可从我的应用程序中执行根命令:

String cmd = "mount -o rw,remount -t ext3 /dev/block/mmcblk1p21 /system";
Process p = Runtime.getRuntime().exec("su");
DataOutputStream os = new DataOutputStream(p.getOutputStream());
os.writeBytes(cmd + "\n");          
os.writeBytes("exit\n");  
os.flush();

然后我有一些代码检查stdout和stderr流以查看发生了什么。 谁能给我个主意,为什么这行不通?

我知道了-该命令实际上是成功的,但看来RW状态仅适用于应用该命令的会话。 这样,在SU下执行一组命令后,下一组命令将/ system置于RO状态。 我要做的就是在退出SU会话之前添加命令以复制文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM