How to show the icon and progress when installing an app on iPhone / iPad using a plist file, correctly?
Asked Answered
M

2

8

I'm working on an own AppStore website that is hosting various enterprise apps for a company. So far everything works, except for the suggested way of downloading apps on Apple devices.

The problem is, I don't archive the same effect like apps that are getting installed from the official Apple AppStore. I don't see the icon of the app on the home screen until the app is installed and I don't see any progress when the app is downloading, only when the app gets installed. The download and install of the app itself works.

When one chooses to download an app to his/her iPhone, there is a redirection to the itms link like so:

itms-services://?action=download-manifest&url=https://example.org/appdistribution/iOS/myApp/meta.plist

My meta.plist file looks like so:

<plist version="1.0">
    <dict>
        <key>items</key>
        <array>
            <dict>
                <key>assets</key>
                <array>
                    <dict>
                        <key>kind</key>
                        <string>software-package</string>
                        <key>url</key>
                        <string>https://example.org/appdistribution/iOS/myApp/app.ipa</string>
                    </dict>
                    <dict>  
                        <key>kind</key> 
                        <string>display-image</string>  
                        <key>needs-shine</key>  
                        <true/> 
                        <key>url</key>
                        <string>https://example.org/appdistribution/iOS/myApp/icon.png</string>
                    </dict> 
                </array>
                <key>metadata</key>
                <dict>
                    <key>bundle-identifier</key>
                    <string>com.sample-company.myApp</string>
                    <key>bundle-version</key>
                    <string>3.0.0</string>
                    <key>kind</key>
                    <string>software</string>
                    <key>title</key>
                    <string>MyApp</string>
                </dict>
            </dict>
        </array>
    </dict>
</plist>

This is what it looks while the app is downloading:

Downloading an app without display image

This is what it looks when the app is installing:

Installing an app without display image

Once it's installed the icon appears.

I tried several image resolutions like 57x57, 72x72, 100x100 and 256x256. I've tested it on an iPhone and an iPad. I suspect the missing progress on the downloading process is a subsequent error that is caused, because the image cannot load.

The really strange part is that I could swear that it once worked before. This looks so trivial, yet I'm not sure what this is caused by. Is there any good example that just works?

Mcclellan answered 14/6, 2018 at 21:5 Comment(2)
You may found below useful :) Application download progressSheepfold
@AbuUlHassan Thank you for the link, the accepted answer in your link is wrong, tho. I'm sure this worked before. I will look over the IIS where my IPAs are hosted, maybe auto gzip is the problem here.Mcclellan
L
3

I guess what you are expecting is to see your app icon with that dimmed effect iOS applies until it has been installed, is that right? If that's correct, I'm fairly certain that is a feature available only to App Store downloads.

To validate that, I have tested installing my app both with TestFlight and with another internal distribution system (AppCenter) and in both cases I saw the same as yourself. Apple's placeholder icon while the application was being downloaded and installed, my application icon once installation finished.

Lai answered 25/6, 2018 at 10:36 Comment(4)
Yes, but I'm pretty sure that it worked before. Could it be that Apple recently changed it? (Why would they do it?)Mcclellan
About that, I'm not sure. I'm fairly certain the situation you describe exists at least since iOS 11.0 though. 100% sure about iOS 11.4 which is the one I used for my test.Lai
I remember doing an update to 11.4 recently. I waited a bit when it was announced and now I really suspect this is a bug in iOS 11.4. Unfortunately I have no older device to confirm my suspicion.Mcclellan
I just tested it and I can confirm on iOS 11.3, you get the same experience. That reinforces my previous point that I'm fairly sure it has been like this since iOS 11. One thing I noticed though, is that at about 80% of the installation process, the placeholder icon is replaced by the app's one. So, it is not necessarily changed when the installation finishes but shortly before that happens.Lai
Z
3

You can use BetaBuilder to generate the plist file : https://github.com/HunterHillegas/iOS-BetaBuilder

Zoo answered 25/6, 2018 at 14:58 Comment(2)
Incredible! This answer should be validated!Engage
I just tested it, but the problems persist, I think this is really a bug, I have no other explanation to this. Or anything on my server causing this issue. For some reason the created [email protected] looks good in the preview, but not in the browser. But as stated above, I also tested normal PNGs I saved with Preview and GIMP that can be displayed with the image URL in the browser. Sorry this does not work, or can anybody validate the opposite?Mcclellan

© 2022 - 2024 — McMap. All rights reserved.