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

我一直在遵循其他问题的说明,例如如何在Charles Web Proxy上configurationSSL证书以及在Windows上最新的Android Emulator? (尽pipe我在MAC上)和SSL Proxy / Charles和Android的麻烦 ,我可以使用Charles Proxy来分析Android模拟器的数据包,一直到Kitkat。

现在我正在尝试为棒棒糖模拟器做同样的事情。 但是,当我重复了我用来成功设置Kitkat模拟器的相同步骤时,Charles什么也没有显示! 当我尝试使用模拟器的浏览器连接到Web时,会出现以下错误: 在这里输入图像说明

在Mac OS X上,Android Lollipop模拟器是否需要执行特殊步骤以启用数据包sniffng?

提前致谢!

Solutions Collecting From Web of "如何使用Charles Proxy设置Android Lollipop模拟器?"

我有同样的,最后find出路:按照您提到的链接中的说明: 如何configuration查尔斯Web代理的SSL证书和Windows上最新的Android模拟器?

然后从charles进入“代理”菜单并启用“Mac OS X代理”。 突然之间东西来了。 即使我closures了“Mac OS X代理”…

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

如果你不想使用命令行,你可以通过模拟器来做到这一点,它需要更多的设置,但是很好的工作:

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

在这里输入图像说明

  1. select主要APN并input代理为10.0.2.2:8888(指向您的计算机本地主机)如果正在使用实际设备或在本地设备场中执行此操作,则可以在networking上使用其他IP。

在这里输入图像说明

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

在这里输入图像说明

  1. SSL证书将下载

在这里输入图像说明

  1. 打开时会要求你设置一个别针或者确认它是否已经设置

  2. 命名证书

在这里输入图像说明

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

注意:我已经用API 24模拟器testing过了,似乎可以工作,但是它可以和其他版本一起工作。

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

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

按照步骤:

1)打开terminal并转到SDKpath中的tools文件夹。
2)在terminal上拖放一个名为emulator的文件(这样做会给你可执行文件的path)。
您的模拟器现在应该读取像这样的path

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

这里xxxx是你可以在Charles Help菜单中find的IP地址。
3)并执行此操作。

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

现在在Android模拟器中有一个设置 在这里输入图像说明

 /Users/`whoami`/Library/Android/sdk/tools/emulator -avd `android list avd | grep Name -m 1 | cut -c 10-99` -http-proxy `ipconfig getifaddr en0`:8888 

这应该在大多数电脑中工作。