zoukankan      html  css  js  c++  java
  • 模拟器获取root权限

    模拟器获取root权限

    https://juejin.im/post/6844903840026722311

    1、材料准备


    ① 下载些东西

    ②和③读者可自行到官网下载,或者用读者打包好的,自取:



    pan.baidu.com/s/1hRrPZhRx…,提取码:cg08

    ② 创建新AVD

    打开Android Studio,依次点击顶部菜单栏:Tools -> AVD Manager -> + Create Virtual Device...,接着选择模拟器相关的配置,比如这里我选择的是:Nexus 5X,点解Next,来到选择镜像的页面:

    选择镜像时,务必注意以下三点!!!

    • 1、Android 8.0(包含8.0)以下的系统镜像!!!
    • 2、Target里**不带(Google APIs)**的镜像,带(Google APIs)的是不能Root的!!!
    • 3、ABI为x86的镜像!!!

    举个例子,笔者选择的7.0的镜像:

    没有镜像的话点Download下载,下载完后点Next进入下一步,这里可以改个简单AVD的名称,因为后面要用命令行来启动,就不用敲那么多,比如我直接改为Test:

    点击Finish,等待AVD模拟器生成:

    不用启动,直接X掉。

    ③ 勾选安装

    Android Studio依次点击顶部菜单栏:File -> Settings -> System Settings -> Android SDK。点击 SDK Tools选项卡,安装圈住的两个东西:

    安装后,点击OK,到此,要准备的东西都准备好了。


    2、开始折腾

    ① 命令行可写方式启动AVD

    接下来开始折腾,打开命令行终端,cd到android sdk的tools目录下:


    接着键入下述命令启动AVD(Test处改成你的前面定义的模拟器名称即可):

    emulator -avd Test -writable-system
    复制代码

    如果你忘记了也没关系,可以键入:emulator -list-avds,查看AVD列表。 成功执行后,可以看到我们的AVD已经运行起来了,终端输出内容如下:

    把这个终端缩小就好,别关掉,关掉的话AVD也会关掉的!!!

    ② 安装APK

    新建一个终端,cd到android sdk的 platform-tools 目录下,通过adb命令安装两个apk:

    安装完后不要打开!!!


    ③ 输入su获取root权限

    解压下载好的zip包,终端键入下述命令:

    adb root
    adb remount
    adb shell 
    setenforce 0
    复制代码

    流程如图所示:

    接着把x86下的su.pie文件分别push到模拟器的system/binsystem/xbin目录下:

    adb push xxx/x86/su.pie /system/bin/su
    adb push xxx/x86/su.pie /system/xbin/su
    复制代码

    流程如图所示:

    再接着进入adb shell,修改这两个文件的权限,安装su等:

    chmod 0755 /system/bin/su
    chmod 0755 /system/xbin/su
    su --install
    su --daemon&
    复制代码

    流程如图所示:

    安装完后就可以打开SuperSu了,打开后会出现如下页面:

    点击New user,接下来会有如下这个弹框,务必注意!!!

    点击选 CANCEL,不然等下重启后,等待你的只有Google的开机页面!!! 会进不了系统,你只能重头再来一遍了,务必选择 CANCEL!!!

    到此SuperSu就安装配置完成了:

    它只是一个Root权限管理的APP而已,接着打开Xposed Installer,点击箭头指向的小云:

    点击Install安装Xposed Framework的zip包

    等待下载完成:

    接着会弹出下图所示的授权弹窗:

    点击Grant,运行授权,接着会自动安装,然后会自动重启:

    重启的过程可能为会稍微久一点,2-3分钟左右,重启完打开Xposed Installer就可以看到Xposed安装成功的页面了:

    以上就是模拟器AVDRoot和Xposed的安装过程,接着说几点注意事项!


    3、注意事项


    ② 正确的关闭AVD

    可以点击右上角的x或者直接把运行模拟器的终端关掉

    !!!千万别,去长按电源键,然后选Power Off!!!

    如果你这样做,再次打开Super Su:

    恭喜,你需要再root一遍了,把这些命令再执行一遍:

    adb root
    adb remount
    adb shell 
    setenforce 0
    quit
    adb push xxx/x86/su.pie /system/bin/su
    adb push xxx/x86/su.pie /system/xbin/su
    chmod 0755 /system/bin/su
    chmod 0755 /system/xbin/su
    su --install
    su --daemon&
    quit
    复制代码

    ② 正确的启动/重启AVD

    ROOT以后的AVD就不能使用AVD Manager来启动了,都需要使用命令来启动了:

    emulator -avd Test -writable-system
    复制代码

    如果使用AVD Manager启动了的话,同样会丧失root权限,同样需要重新Root。另外,如果需要重启设备的话,建议使用:adb reboot 命令来重启!


    一些碎碎念

    本节是笔者亲测,有效,完整过程,可能你有更好更简单的方式,欢迎在评论区留言。 另外,本套root方案只适合Android 9.0以下系统,9.0以上的童鞋可以试试用Magisk 来替代SuperSu。还有,Xposed Installer还停留在8.x,并没有适配9.0以上的系统。 想在9.0以上的手机使用Xposed的话可以了解下:太极Xposed,更多可移步到: xposed.appkg.com/2902.html,自行查看。


    参考文献


    ============= End
     
  • 相关阅读:
    oracle 的exists 的用法
    linux
    C++纯虚函数
    C++ 的虚析构函数
    C++ new
    C++点和箭头操作符用法区别
    static
    关于C的int
    互斥量mutex的简单使用
    nginx服务器屏蔽上游错误码
  • 原文地址:https://www.cnblogs.com/lsgxeva/p/13468859.html
Copyright © 2011-2022 走看看