我使用以下命令手动植入我的模拟器
adb shell mount -o rw,remount -t yaffs2 /dev/block/mtdblock03 /system
adb push su /system/xbin/su
adb shell chmod 06755 /system
adb shell chmod 06755 /system/xbin/su
adb install superuser.apk
它已成功植根并运行su命令,但在关闭模拟器并再次打开模拟器时,su命令无法正常工作。为了克服这个问题,我想创建一个示例应用程序,用于使用
执行上述命令Runtime.getRuntime().exec();
请一个人帮我如何以编程方式执行上述命令。
答案 0 :(得分:1)
模拟器是开箱即用的,因为ADB shell以root身份运行。
你所做的不是“扎根”它,而是使用预先存在的root shell来安装一个常见的hack,然后让应用程序以root身份运行帮助任务。
但你不能从设备上的应用程序那里做到这一点,因为设备上还没有能够以root身份启动帮助程序 - 所以你会遇到循环依赖或者需要root的鸡蛋和鸡蛋问题才能安装根助手。
如果没有找到安全漏洞(或预先存在的故意权限提升机制),您将无法在设备甚至模拟器上执行此操作。
然而:
您可以阅读如何使模拟器的状态持久化,并且只能手动执行一次
您可以从开发机器上运行的脚本发出命令,而不是在设备/模拟器上发出命令