SSL proxying with Charles

Charles is a great development tool for inspecting HTTP traffic. Here are the steps to enable SSL proxying with a Genymotion Android emulator and Charles 3.10:

  1. Proxy the emulator traffic to the host machine
    1. Long press “WiredSSID” and choose to modify the network
    2. Create a manual proxy with host and port 8888
  2. Enable SSL proxying in Charles
    1. Proxy > SSL Proxying Settings… > Enable SSL Proxying
    2. Add hosts for the traffic you want to inspect
  3. Install the Charles certificate on the emulator
    1. Go to in the emulator browser
    2. Name the certificate and select Wi-Fi credential use

A PIN lockscreen is required to install the certificate in 3.1. Note that is a Genymotion-specific IP for the host machine. Setting up a physical device is similar. Just make sure the machine running Charles is on the same network and use it’s IP address in 1.2.