mumu模拟器安装xposed--如何在android模拟器上进行root

问题描述

  安装xposed表示failed to access root权限,新版的mumu模拟器没有了root选项,需要自己root。

1.先关掉应用兼容性,然后重启

  电脑一般都是x86的,mumu模拟器的本地命令其实都是这个格式的。可如下进行查看

#链接模拟器
>adb connect 127.0.0.1: * daemon not running; starting now at tcp:
* daemon started successfully
connected to 127.0.0.1:

#随便从模拟器系统路径下取回一个命令文件,这里选择mv命令
>adb pull /system/bin/mv c:\apk\mv /system/bin/mv: file pulled. 5.0 MB/s ( bytes in .079s) #查看其ELF Header,其Machine值是Intel 80386
>readelf -h c:\apk\mv

ELF Header:
Magic: 7f 4c
Class: ELF32
Data: 's complement, little endian
Version: (current)
OS/ABI: UNIX - System V
ABI Version:
Type: DYN (Shared object file)
Machine: Intel
Version: 0x1
Entry point address: 0x6030
Start of program headers: (bytes into file)
Start of section headers: (bytes into file)
Flags: 0x0
Size of this header: (bytes)
Size of program headers: (bytes)
Number of program headers:
Size of section headers: (bytes)
Number of section headers:
Section header string table index:

  兼容性设置让只支持arm架构的应用也能安装在模拟器上,但是装xposed的过程里将会往模拟器 /system/bin或/system/xbin里复制一些新的命令,这些命令有些是通过XposedInstaller安装的,而XposedInstaller是根据检测出来的系统架构选择相对的命令进行安装的,打开兼容性时XposedInstaller认为系统的架构是arm,这样安装的命令是不能在模拟器上执行的。

2.对模拟器进行root

  mumu模拟器可用很多真机需要root才能用的命令,比如pull,但是其其实是没root的。没root其实就是没有su命令,不能通过su获得root权限,root其实是linux的一个用户。这里安装supersu2.82.apk,安装后打开显示没有su命令,这个应用其实是管理其它应用的,当其它应用需要root权限时跟它申请,它会跳出对话框让你选择是否同意。但现在supersu也没有root权限,这是因为模拟器里就没有su这个命令。下载supersu对应的Recovery Flashable.zip,这里头有各种架构下的su命令,目标就是选择适合的su命令复制到模拟器可执行目录下。具体做法如下

#选择x86文件夹下的su.pie复制到 /system/xbin/su
#经测试复制到/system/bin/su不行
#选择su.pie是因为mumu模拟器是android 6.0属于较高版本
>adb push c:\SuperSU-v2.-\x86\su.pie /system/xbin/su

#修改su的权限为可执行文件
>adb shell >su root >cd /system/xbin/su >chmod su #安装些啥,照着做
>su --install #打开守护进程
>su --daemon& #Set SELinux to Permissive
>setenforce 0

这里可重启下模拟器在打开supersu会下载些文件,之后就可用了。到此,模拟器算是root了。

3.用XposedInstaller安装xposed

下载XposedInstaller_3.1.5.apk安装,傻瓜式安装即可。期间supersu会弹出对话框选择同意,别错过对话框。装好后最好重启下模拟器。

4.记得重新打开兼容

主要参考

1.MuMu模拟器怎么安装Xposed框架

  有点过时,新版的mumu模拟器没有root选项了,需要自己root,这也是我遇到的真正问题。

2.Rooting the Android Emulator – on Android Studio 2.3 (Android 4.4+)

主要根据这个来,因为mumu模拟器可直接往/system/xbin目录push文件,省略了一些步骤。

上一篇:flash bulider 生成app无法安装在xcode模拟器上


下一篇:Bootstrap3 表格-紧缩表格