How to download OTA in-House iPA app file

2k Views Asked by At

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?

0

There are 0 best solutions below