Skip to content →

SSL Proxying with iOS 9

After you've installed the root SSL certificate for your installation of Charles on your iOS device, you will be able to use SSL Proxying with apps. As of Charles 3.11.4 you can now do this with apps compiled and running on iOS 9 with App Transport Security.

Note that some apps implement SSL certificate pinning which means they specifically validate the root certificate, and will not work with Charles.

In the event that you continue to have difficulties using SSL Proxying with your own apps, you could try disabling ATS. To disable ATS you need to add keys to your app's Info.plist file, as below. See this tech note from Apple for more information.

You must remember to re-enable ATS before you release your app to take advantage of the security that ATS provides.

<key>NSAppTransportSecurity</key>
<dict>
  <key>NSAllowsArbitraryLoads</key>
  <true/>
</dict>