I have a service that returns the itms-service:// url to perform a update on the app that makes the request.
I also NSURLProtocol to handle https challenges and authentication space trust with my backend.
when I unregister the NSURLProtocol, the system loads the itms-services:// download request fine. When I add my own protocol, the unsupported URL message starts to happen.
I tried returning NO to canInitWithRequest: methods containing the itms-services URL scheme with no success.
The only way I got it to work is:
- unregistering the custom NSURLProtocol for the time the service update and the subsequent call to itms-services occur
- adding an arbitrary statement that returns no when a request to my app update backend URL is detected, therefore not performing custom trust verification to my backend to avoid MITM.
Does anyone know how to solve this?