Reputation: 4323
I've been experimenting with which chars in the "Application URL:" field prevent an OTA installation from being triggered at all when deploying enterprise apps off of a manifest link.
I'm trying to generate the paths automatically, but it is common that we will have special characters in the file name and it appears that certain chars in the URL simply prevent the manifest from triggering an install at all.
For example, if you have a space char, you can't escape it out with %20 and put %20 in the application URL. If this is done, no error is thrown and the itms-services://?action=download-manifest&url= action simply fails without a message.
For example, if the Application URL where the pList for the app sits is: http://mydomain.com/my-app.ipa
The install link to the manifest file would be: itms-services://?action=download-manifest&url=http://mydomain.com/my-app.plist
And inside my-app.pList, there would be this entry: url http://mydomain.com/my-app.ipa
However if the - is replaced by a space, you can not use a space char or an escaped %20 in the Application URL, even if you create the ipa with that in the "Application URL:" for the ipa and in the pList.
Thanks in advance.
Upvotes: 3
Views: 1010
Reputation: 2206
It worked for me when I used %20 in my plist file and %2520 in my itms-services link. The answer here by tc mentions the 'double escaped' trick for the itms-services link.
Upvotes: 3
Reputation: 187
As I answered here the simplest solution is to replace spaces with "+"(plus) as ...url=... means it is query string parameter and they shall be encoded as form data parameter when encoded for URLs.
From here W3.org - Forms in HTML documents:
"Control names and values are escaped. Space characters are replaced by '+', and then reserved characters are escaped as described in [RFC1738]"
Upvotes: 1