安装工具
- 我们需要准备好官方提供的 Android studio
- Charles
安装
创建新项目
打开 IDE 并创建一个新的项目
新建模拟器
我们先随意创建一个模拟器
完成了上诉的流程之后,我们可以发现 IDE 右边出现了可启动的模拟器。
配置运行环境
先把地址常用命令
vi .zshrc
export PATH=$PATH:/xxx/xxx/Library/Android/sdk/emulator:/xxx/xxx/Library/Android/sdk/platform-tools
如果是临时配置的话,可以如下:
export PATH=$PATH:/xxx/xxx/Library/Android/sdk/emulator
export PATH=$PATH:/xxx/xxx/Library/Android/sdk/platform-tools
具体的路径在安装 IDE 的时候会说明,一般是在
/Users/
下边,配置完成之后,测试一下:
emulator -list-avds
adb
我们可以看到刚刚创建的模拟器列表
以及adb的命令生效
启动模拟器
模拟器我们通过命令行来启动。
emulator -avd xxx -writable-system
xxx 指的是刚刚通过-list-avds
配置root权限
启动模拟器成功之后,界面会弹出手机模拟器。启动成功之后,我们首先先给模拟器设置 root 权限
adb root
adb remount
命令执行完之后,模拟器会重新启动。如果启动成功,那么手机的root权限已开启。
配置抓包工具证书
因为我们要进行抓 https 的请求,所以需要安装代理工具的证书。流程差不多,这里用的是 Charles 。
下载证书
点击这个下载证书文件,下载之后查看证书。
openssl x509 -subject_hash_old -in charles-ssl-proxying-certificate.pem
把-----BEGIN CERTIFICATE-----
上边的字符串拷贝下来,之后会用。
安装证书
在命令行执行安装命令。xxx 就是刚刚证书中拷贝出来的字符串。
adb push charles-ssl-proxying-certificate.pem /system/etc/security/cacerts/xxx.0
但是一般情况下,大家会遇到以下报错。
remote couldn't create file: Read-only file system
这个说明没有权限在系统目录中写文件,一般情况下系统是只读的。所以还要给系统设置一下权限
adb disable-verity
adb reboot
adb root
adb remount
执行完之后,模拟器会再次重新启动。这个时候再次执行 push 操作。基本就没问题了。
配置代理
配置代理和手机上没有什么区别。从 Charles 中查看本机的代理端口号。
我配置的是 8888。接下来设置模拟器的代理
保存之后,这个在刷新目标软件,抓包成功!开始愉快的写爬虫吧~