1.在sdk目录下 ,platform/android 8/images/system.img拷贝到需要root模拟器所在目录(在sdk目录下的.android/avd/)。
2.启动需要root的模拟器。可以通过命令行,也可以通过avd manager。(建议通过命令行)
3.等启动成功后在命令行模式。adb shell。
mount查看挂载的。
找到这一行:
/dev/block/mtdblock0 /system yaffs2
输入:
mount -o remount,rw -t yaffs2 /dev/block/mtdblock0 /system
成功后。exit。
4.将需要root的两个文件推进模拟器中(su和superuser.apk)。
adb push /.../.../su /system/bin/
adb push /.../.../superuser.apk /system/app/
5.再次进入模拟器。更改这两个文件的权限和所在用户组。
cd /system/bin
chown root.shell /system/bin
chmod 4755 /system/bin/su
cd /system/app
chown root.root /system/app/Superuser.apk
chmod 644 /system/app/Superuser.apk
6.删除掉sdksetup.apk。
rm /system/app/SdkSetup.apk
root获取权限所需文件:
7.关闭模拟器,把产生的image文件: .androidavdV_Android2.2.avd下的userdata-qemu.img,userdata.img, cache.img删除掉。以免模拟器还原
root时候注意事项:
1.如果提示内存不足.out of memory(通过命令行启动模拟器)参照:
emulator -avd Android2.2(模拟器名字) -partition-size 128
2.如果提示权限不够.Read-only file system:
方法1:mount -o remount,rw -t yaffs2 /dev/block/mtdblock0 /system
方法2:mount -o remount rw /