1

I've been trying to set up a link on my website that allows visitors to download an enterprise app file of mine. I have been following the instructions from Apples site here:

https://help.apple.com/deployment/ios/#/apda0e3426d7

However, whenever I click on the download link nothing happens. I followed Apples instruction line by line but, I can't figure out why it still wont work.

Here's what I've done so far:

  1. I've set up the correct provisioning for the iPA file
  2. I've uploaded my iPA file to a location on my server along with the .plist file (both in the same directory)
  3. I added the following link to my website (the url in the link points to where I'm storing the .iPA and .plist files)

    <a href="itms-services://?action=download-manifest&url=https://www.my-site.com/Info.plist">Install iPhone App</a>
    
  4. I added the following code to my .htaccess file at the root level of my site:

    AddType text/xml .plist
    AddType application/octet-stream .ipa
    <Files *.ipa>
         Header set Content-Disposition attachment
    </Files>
    

the plist file looks like this:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>items</key>
    <array>
        <dict>
            <key>assets</key>
            <array>
                <dict>
                    <key>url</key>
                    <string>https://www.my-site.com/app-file.ipa</string>
                </dict>
                <dict>
                    <key>url</key>
                    <string>https://www.my-site.com/display-image57x57.png</string>
                </dict>
                <dict>
                    <key>kind</key>
                    <string>full-size-image</string>
                    <key>url</key>
                    <string>https://www.my-site.com/full-size-image512x512.png
                    </string>
                </dict>
            </array>
        </dict>
    </array>
    <key>CFBundleDevelopmentRegion</key>
    <string>en</string>
    <key>CFBundleDisplayName</key>
    <string>AFFORDABLE HOME CARE</string>
    <key>CFBundleExecutable</key>
    <string>$(EXECUTABLE_NAME)</string>
    <key>CFBundleIdentifier</key>
    <string>com.xxxxxxxxxxxxxxxxxx.AHC</string>
    <key>CFBundleInfoDictionaryVersion</key>
    <string>6.0</string>
    <key>CFBundleName</key>
    <string>MY APP NAME HERE</string>
    <key>CFBundlePackageType</key>
    <string>APPL</string>
    <key>CFBundleShortVersionString</key>
    <string>1.0</string>
    <key>CFBundleSignature</key>
    <string>????</string>
    <key>CFBundleVersion</key>
    <string>1.0</string>
    <key>ITSAppUsesNonExemptEncryption</key>
    <false/>
    <key>LSApplicationCategoryType</key>
    <array>
        <string></string>
    </array>
    <key>LSRequiresIPhoneOS</key>
    <true/>
    <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict>
    <key>UIAppFonts</key>
    <array>
        <string>SinkinSans-300Light.otf</string>
        <string>SinkinSans-300LightItalic.otf</string>
        <string>SinkinSans-400Italic.otf</string>
        <string>SinkinSans-400Regular.otf</string>
        <string>SinkinSans-500Medium.otf</string>
        <string>SinkinSans-500MediumItalic.otf</string>
        <string>SinkinSans-600SemiBold.otf</string>
        <string>K</string>
    </array>
    <key>UIBackgroundModes</key>
    <array>
        <string>remote-notification</string>
    </array>
    <key>UILaunchStoryboardName</key>
    <string>LaunchScreen</string>
    <key>UIRequiredDeviceCapabilities</key>
    <array>
        <string>armv7</string>
    </array>
    <key>UISupportedInterfaceOrientations</key>
    <array>
        <string>UIInterfaceOrientationPortrait</string>
    </array>
    <key>UISupportedInterfaceOrientations~ipad</key>
    <array>
        <string>UIInterfaceOrientationPortrait</string>
        <string>UIInterfaceOrientationPortraitUpsideDown</string>
        <string>UIInterfaceOrientationLandscapeLeft</string>
        <string>UIInterfaceOrientationLandscapeRight</string>
    </array>
</dict>
</plist>

Whenever I click on the download link and I look at the console log in chrome it shows the status as canceled and it looks like this:

Chrome Error Message 1 Chrome Error Message 2

For the life of me I just can't get this to work. On only thing I can think of is it has something to do with my server that is out of my control. My server is on a shared hosting platform through GoDaddy. I have an SSL certificate set up with them but I do not have a dedicated server. Other than that I have no idea what the problem could be. Does anyone here know why this won't work for me?

Austin
  • 1,619
  • 7
  • 25
  • 51
  • I can help. Did you check your logs in your device where you try to download – Kapil G Aug 01 '17 at 16:00
  • Also have you added display-image57x57.png and full-size-image512x512 on the path where you mention in plist? – Kapil G Aug 01 '17 at 16:01
  • The link will only work on an iOS device. Chrome isn't going to even attempt to load the URL because it doesn't understand the `itms-services` scheme. Have you tried it on an iOS device? You keep talking about clicking the link, but you haven't mentioned tapping it. – Jim Aug 01 '17 at 16:05
  • tapping it on a iOS device also does nothing. A long tap opens a pop-up that says: Open in "iTunes" , Copy, Share. If I click: Open in "iTunes" nothing happens. I'm not sure how to open the error log on the device. – Austin Aug 01 '17 at 16:22
  • Have you verified that the property list and IPA can be fetched and have the correct headers using a tool like HTTPie / cURL / Paw / Postman? – Jim Aug 01 '17 at 16:33
  • Just tested using postman. tried the .ipa url, the .plist, and the property list url. All links produced header info. Not sure what I should be keeping an eye out for though. – Austin Aug 01 '17 at 17:25
  • @Austin what do your device logs say when you try to install. Also as I asked if you have not added the png file and mentioned it in plist it will not download. Also so you get a popup on your device when you click download saying you are about to download the app and asking for permission? – Kapil G Aug 01 '17 at 17:53
  • @kapsym the images are on the server. I don't see anything when I click the link on the device, other than the "open with iTunes" popup which does nothing. How do I view the device logs? – Austin Aug 01 '17 at 18:02

0 Answers0