创建模拟器
首先创建模拟器,开启Root权限、共享磁盘可写入,这两部很重要。如下


设置代理
模拟器配置宿主机的 Charles 的代理IP加端口,默认 8888。

1 | # adb 全局代理 |
安装证书

手机打开浏览器,手机端的浏览器,在地址栏中输入:chls.pro/ssl,会自动下载证书,安装证书到用户证书下。需要把证书复制到系统证书目录下,此时用到了前面开启的Root权限。
1 | ## Android8+以上,执行这一条就可以了,前提是 Root 权限,雷电模拟器共享磁盘可写入 |
Android8.0以上
在Android8.0以上通过以上mount命令,你会发现找不到/system代表的节点和拥有的权限信息,这是因为Android8.0之后谷歌加入了A/B system的特性,system分区跟ramdisk分区打包在一起,因此系统起来之后也就不存在system分区了,而是直接把system镜像挂载到/根目录上。所以/proc/mounts文件中没有包含/system的权限信息。
adb disable-verity
1 | 如果提示 /dev/root’ is read-only,则需要执行下面的命令,注意有的adb没有这个参数,此时需要下载最新的 adb 客户端,但同时也需要覆盖到服务端下 |
错误
报错:如果是旧版本adb会显示如下信息
1 |
|
原因:旧版本adb不含disable-verity 工具包
解决办法:安装最新adb工具
报错:Failed to read fstab Maybe run adb root?
原因:雷电模拟器9把,这块直接界面化了,不需要通过disable-verity 解锁磁盘,但是其他种类模拟器会用到这个功能,大同小异,自己拿捏吧
解决办法:在模拟器设置,磁盘管理开启 system.vmdk可写入
adb 下载
Windows版本:https://dl.google.com/android/repository/platform-tools-latest-windows.zip
Mac版本:https://dl.google.com/android/repository/platform-tools-latest-darwin.zip
Linux版本:https://dl.google.com/android/repository/platform-tools-latest-linux.zip
1 | 查看版本 |
参考
https://blog.csdn.net/baidu_38661691/article/details/107481148
https://blog.csdn.net/nmg10/article/details/133946252
https://blog.csdn.net/qq_45444679/article/details/135677033
https://blog.csdn.net/weixin_43391813/article/details/130850778