如何使用Charles Proxy设置Android Lollipop模拟器?

Som*_*ent 22 proxy android android-emulator android-5.0-lollipop charles-proxy

我一直在关注其他问题的说明,例如如何使用Charles Web Proxy和Windows上的最新Android模拟器配置SSL证书?(我虽然在MAC上)和SSL代理/查尔斯和Android的麻烦,我能够使用Charles Proxy分析Android模拟器的数据包一直到Kitkat.

现在我正在尝试为棒棒糖模拟器做同样的事情.但是,当我重复我用来成功设置Kitkat仿真器的相同步骤时,Charles没有显示任何内容!当我尝试使用模拟器的浏览器连接到Web时,它会出现以下错误: 在此输入图像描述

为了启用数据包嗅探功能,Mac OS X上的Android Lollipop仿真器是否需要特殊步骤?

提前致谢!

Han*_*ans 28

我有同样的,最后找到出路:按照你提到的链接中的说明:如何使用Charles Web Proxy和Windows上的最新Android模拟器配置SSL证书?

然后从查尔斯进入"代理"菜单并启用"Mac OS X代理".比突然的东西来了.即使在我关闭'Mac OS X代理'之后......

ps:通过模拟器上的移动设置设置代理不起作用; 代理设置必须通过命令行完成(sdk/tools中的模拟器命令,应该运行类似:) ./emulator -avd Nexus_4_API_21 -http-proxy http://<your-ip-as-in-charles-help-menu>:8888.我也尝试了一些像proximator这样的代理应用程序而没有任何成功.我也有问题,并重新启动查尔斯修复它.


pab*_*sco 17

如果你不想使用命令行,你可以从模拟器执行此操作,它需要更多的设置,但工作得很好:

  1. 打开设置>更多>蜂窝网络>接入点名称

在此输入图像描述

  1. 选择主APN并输入代理10.0.2.2:8888(指向您的计算机localhost)如果您使用实际设备或在本地设备服务器场上,则可以在网络上使用其他IP.

在此输入图像描述

  1. 转到Chrome上的charlesproxy.com/getssl

在此输入图像描述

  1. SSL证书将下载

在此输入图像描述

  1. 打开时,它会要求您设置一个引脚或确认它是否已经设置好

  2. 为证书命名

在此输入图像描述

  1. 享受代理(您必须在Charles上为您的域启用SSL代理才能查看请求)

注意:我已经使用API​​ 24仿真器对其进行了测试,并且似乎可以正常工作,但它应该适用于其他版本.

注意2:从Android Studio 3.0开始,在大多数情况下使用API​​> 21时将不再需要Charles:https: //developer.android.com/studio/profile/network-profiler.html


Chr*_*ena 10

现在Android模拟器中有一个设置 在此输入图像描述

  • 来自模拟器的网络调用显示在查尔斯作为原始IP地址.有没有办法让他们显示为他们的域名? (3认同)

sud*_*007 8

在Android模拟器上进行调试时,在Mac上可能会非常单调乏味.

按照步骤:

1)打开终端并转到toolsSDK路径中的文件夹.
2)拖放emulator在终端上命名的文件(这样做会为您提供可执行文件的路径).
您的模拟器现在应该读取这样的路径

/ Users/your_pc_name/android_sdk/tools/emulator -avd Nexus_6P_API_23 -http-proxy http:// xxxx:8888

这里xxxx是您可以在Charles Help菜单中找到的IP地址.
3)并执行此操作.

瞧!您的模拟器现在将以代理网络模式启动.