I'm upgrading an iOS app to iOS 9, and I have some URLs that are not secure, and I need a few exceptions to App Transport Security. I've added the two that I know about, but there are some warnings happening now stating:
App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your app's Info.plist file.
I need to know what URLs are being blocked so I can add them to the Info.plist, they're probably images or media files. How can I make the system log the URLs it decided not to load?
Accepted answer is correct but If you're doing this on Xamarin iOS, you will need to use;
Also, if you're looking for the log file use something like Simulator manager to find the correct location easier (https://github.com/tue-savvy/SimulatorManager).
Editor Note: @jessedc points out in the comments below the link to the official Apple documentation on how to do this: https://developer.apple.com/library/content/qa/qa1887/_index.html
Okay, I have an answer I don't like! I still very much want a better one.
In my
application:didFinishLaunchingWithOptions:
method I added the lineWhen I ran the app then, in the log I can find an entry that looks like this:
When I open that file I have a huge number of log entries about everything that's happened on the network. I search for
kCFErrorDomainCFNetwork
in that file and get logs for failed network requests. I can use that to see what URLs the system was trying to hit, and then can add that URL to the exceptions for App Transport Security.