Debugging live network traffic in your app is always interesting. There are some great apps for tracking your network connections, such as the cross-platform classic Charles Proxy, the more modern and Mac-assed alternative Proxyman, and even an embedded framework like Pulse.
And now with Xcode 13, you can forgo the third-party apps altogether if you so choose. This comes in especially handy if your company has third-party apps locked down. 🤷🏻♂️
I’ll chalk this up as the clever idea of the week. This dude figured out how add special debugging capabilities to your production shippable TestFlight build without security compromises or other issues. 🤯
I love that he first runs through all the “not-so-good” ideas that he tried before landing on this elegant solution (including hardcoded user id’s, a secret gesture, a secret URL scheme, and a different bills config.)
The anser, in a nutshell is:
Create a special configuration profile using Keychain Access and Apple Configurator 2, and install this on your devices. Detect the presence of this profile to enable your debugging features on that device.
How did I not know about this? iOS in-app debugging, including network calls, view hierarchy, and basically anything else you can think of. On the device! No Xcode needed.
FLEX (Flipboard Explorer) is a set of in-app debugging and exploration tools for iOS development. When presented, FLEX shows a toolbar that lives in a window above your application. From this toolbar, you can view and modify nearly every piece of state in your running application.