Charles Web Proxy

Last Update:

If you need to test an integration to make sure your game is making the right network calls to Chartboost, use a Web debugging proxy like Charles – which you can try for free – to do it.

The instructions on this page apply only to Charles v3.9.3 and below!
Charles will not work on Android Nougat.

Setting Up Charles on Your Computer

  1. Download Charles Proxy, then install and launch the program
  2. Open the Proxy Settings menu (Proxy > Proxy Settings > SSL) and check Enable SSL Proxying. After that, add and check the locations shown below:


Setting Up Charles on Your Mobile Device

Because iOS SDK 3.2+ games and games integrated with some Android SDK versions require a SSL proxying certificate, you'll need to download one and add it to your test devices – this lets the Charles SSL HTTPS request make it to our servers.

To start, download the Charles Proxying Certificate, then see below for OS-specific instructions:

Adding the Certificate to Android Devices

Things are simple on the Android side – you'll just need to copy the certificate to your mobile device, then open it with any file explorer app. (Note: Some Android devices won't be able to install the certificate – if you run into this problem, write to us for assistance.)

Adding the Certificate to iOS Devices
  1. First, send the Charles Proxy SSL Proxying Certificate to an email address that has already been added to your iOS device's Mail app
  2. Next, launch the Mail app on your device and open the email with the Charles Proxy attachment
  3. Finally, just tap on the attachment – you'll be prompted to install the certificate

Testing Your Chartboost Integration

Once you're all set up, use the steps below to get ready for each testing session:

  1. Connect your computer and mobile device to the same WiFi network, and make sure Charles is running
  2. Open your device's advanced WiFi settings and set the HTTP proxy as Manual. Enter your computer's IP address as the server, and use port 8888.
  3. Add a filter for Chartboost to isolate calls to our system, then launch your game on your mobile device
Interpreting Charles Results

The very first call you should see – provided you filtered for Chartboost as mentioned above – is the Chartboost initialization call:

This is how the initialization calls you've added to your code should appear. Because our system needs to receive these calls on every bootup to accurately convert installs and track performance, they must not be dependent on prior network requests or user actions.

After logging this call, switch the lower panel to the Request view to verify that the game's App ID matches the App ID in the Chartboost dashboard:

Next, shift to the Response view to check for a successful initialization call – you should see a 2XX response:

If you're seeing a 4XX response, double-check your code for the right Chartboost App ID and App Signature.

You can also use Charles to verify successful interstitial calls; they'll look something like this:

Android Devices Date/Time Edge Case: We've found that Android devices with incorrect date/time settings can have trouble connecting to the Internet; if the troubleshooting steps above haven't worked for you and you're using an Android device, it's worth double-checking your date/time setup.