使用Genymotion和Charles的SSL代理?

Ctr*_*rlF 24 proxy android virtualbox genymotion charles-proxy

我正在尝试使用Charles代理的Genymotion(一个托管在Virtualbox中的x86 Android模拟器).我已经设法将设备连接到设备的wifi代理设置中的代理,使用网关ip(vm配置为使用仅主机适配器fwiw)并且http流量代理就好了.我已经在vm上安装了charles cert,但所有ssl连接仍然失败,并显示"SSL:无法识别的SSL消息,明文连接?" 错误.有没有人能够配置genymotion与Charles合作作为ssl代理?我可以通过虚拟机设置实现更通用的解决方案吗?

提前致谢.

小智 19

转到你的genymotion模拟器

设置 - > Wifi - >按住您的活动网络

选择"修改网络"

选择"显示高级选项"

选择"代理设置 - >手动"

将代理设置为:10.0.3.2(Genymotion的本地工作站的特殊代码.网络模式必须是虚拟设备配置上的NAT)

将您的端口设置为:8888

按保存.

虽然在此之后您将看到记录在charlesproxy中的网络请求.打开genymotion浏览器并转到以下URL http://charlesproxy.com/getssl下载并安装证书.你应该好好去.复制自:http://rexstjohn.com/using-genymotion-charles-proxy/


Mic*_*kal 12

更新于2016年7月21日,反映了查尔斯3.10以来的变化

为了在SSL连接上启用纯文本通信,Charles充当了中间人.在管理设备以通过Charles http代理进行通信之后,您需要从正在运行的Charles实例下载并安装证书,该证书由Charles Root证书生成并签名.

基本上有两种可能的方式(我更喜欢第一种方式):

直接在设备上下载并安装

设备必须配置为通过查尔斯进行通信!

  1. 启动浏览器
  2. 打开http://charlesproxy.com/getssl
  3. 证书下载将开始
  4. 确认插入对话框

从Charles UI保存证书

  1. 通过"帮助 - > SSL代理 - >保存查尔斯根证书..."保存证书
  2. 将它放在设备上(通过adb push,email ....)并单击该文件以进行安装.

注1:安装证书后,您将被迫为设备创建安全管脚/码/密码.

注意2:由于不再支持Charles v3.10单一SSL根证书.