Switching your iOS proxy profile is, unfortunately, very tedious. The manual way to do this is to go to Settings -> Wi-Fi -> click the information icon on your Wi-Fi connection -> Configure Proxy (at the very bottom) -> Manual -> Type everything in. If you need to change any of that, you’ll have to do it all again…

The solution I’m about to offer you is far from perfect, but it’s much more automated and requires much less brain power than the manual way.

To do this, we are going to use Shortcuts to install and remove profiles that will configure our proxy settings in a stream-lined way. This approach is inspired by an AskDifferent answer by jcaron.

Before I lose you, here’s what we’re trying to acheive:

Enable Supervised Mode

Unfortunately, for this to work, your device has to be supervised (WARNING: which requires factory resetting your phone 😥). Also, this requires access to a mac. What it doesn’t require is Jailbreaking!

Before you begin, make sure to diable Find My Phone or this will fail.

I won’t cover this portion in detail because it’s already well-documented elsewhere. See this article, for example. But I will show some screenshots of enabling this.

In Apple Configurator 2, Right-click your device and choose Prepare. Choose similar options to the following:

Manage device

Choose “Do not enroll in MDM” on the next screen. Choose (or make and choose) an organization. This is just an arbitrary name.

Choose to show all steps on the next screen:

Prepare

Click Prepare. It will likely tell you that you have to erase your phone to do this. Make a backup of your phone, if you have not already, and continue.

Create the Enable Proxy Shortcut

Now for the fun stuff. The easiest way to create the Enable Proxy shortcut would be to download and modify my version here: Enable Charles Proxy Shortcut.

The shortcut we’re trying to create is shown below on the right:

shortcuts

Here are the steps in case you want to do it manually (This is all of them even though it’s slightly cut off):

proxy steps

Step one and step two of the above image open a link to a profile that sets all of the proxy settings. To make these steps set your desired proxy settings, see Configure Proxy Profile below.

Configure Proxy Profile

For this to work, you need to make a profile that configures the device’s proxy settings. The following is my profile file that configures my iPhone to use Charles Proxy as my device’s proxy (which lets me snoop on my iPhone’s network traffic):

You should be able to leave pretty much everything the same and just change the settings you care about (such as ProxyServer). Afterwards, you can upload it to your own gist (or anywhere internet accessable) and replace the URL in step 1 with yours. The final step isn’t 100% necessary but I find it convneient. It opens the Profile settings page so you can quickly enable the newly downloaded profile. The separate shortcut is covered below.

Create the Profile Settings Shortcut

The following shortcut opens the Profile settings page (which is somewhat hard to find) and streamlines enabling the newly downloaded profile and also removing it when you are done with it. Below is the only step in the shortcut. It can also be downloaded here for extra convenience.

Open Settings

The shortcut simply opens the URL prefs:root=General&path=ManagedConfigurationList in safari which actually opens the preferences page.

Putting It All Together

This is the same video from the start of the article, but let’s revisit it.

What’s happening is after you click the Enable Proxy shortcut, you’re taken to a page where you can download the profile. After clicking allow, you should manually go back to shortcuts, which will continue the shortcut automation and open the profile page. Here, you click Install, type in your password, and now you’re configured.

To stop using your proxy, you simply uninstall the profile, which once again, you can get easy access to using the Open Profile Settings Shortcut.

Like I said, it’s not perfect. There’s a decent number of steps here, but the main reason why I still like it is that I don’t have to remember anything. I’m just following clicks until my profile is enabled or disabled.