不显示 Ad-Hoc 图标

Posted

技术标签:

【中文标题】不显示 Ad-Hoc 图标【英文标题】:Ad-Hoc icon does not display 【发布时间】:2016-10-05 17:55:55 【问题描述】:

在为 beta 测试人员分发我的应用程序时遇到了一个奇怪的问题。这是关于下载过程中的应用程序图标。

当用户通过指向应用清单的链接并点击“安装”时,可能会出现 2 个问题:

    在应用准备好启动之前,主屏幕上的应用图标根本不会出现。 应用程序图标占位符出现,而不是清单中由 URL 托管的我的应用程序图标 (please see screenshot)。应用完全安装后,捆绑包中的应用图标就会出现。

问题转载于:

iPhone 5s,ios 9.2.1 iPhone 5s,iOS 10.0.2 iPhone 4s,iOS 9.3.5

在装有 iOS 9.2 的 iPad Air (A1474) 上没有问题。

这是我的清单:

<?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>kind</key>
                    <string>software-package</string>
                    <key>url</key>
                    <string>https://s3-eu-west-1.amazonaws.com/vandco/JustAMap/JustAMap.ipa</string>
                </dict>
                <dict>
                    <key>kind</key>
                    <string>full-size-image</string>
                    <key>needs-shine</key>
                    <false/>
                    <key>url</key>
                    <string>https://s3-eu-west-1.amazonaws.com/vandco/JustAMap/globe-adhoc-1024p.png</string>
                </dict>
                <dict>
                    <key>kind</key>
                    <string>display-image</string>
                    <key>needs-shine</key>
                    <false/>
                    <key>url</key>
                    <string>https://s3-eu-west-1.amazonaws.com/vandco/JustAMap/globe-adhoc-1024p.png</string>
                </dict>
            </array>
            <key>metadata</key>
            <dict>
                <key>bundle-identifier</key>
                <string>ru.vandco.JustAMap</string>
                <key>bundle-version</key>
                <string>0.9</string>
                <key>kind</key>
                <string>software</string>
                <key>subtitle</key>
                <string>V&amp;Co Ltd.</string>
                <key>title</key>
                <string>Просто.Карта</string>
            </dict>
        </dict>
    </array>
</dict>
</plist>

应用程序图标为 1024x1024(PNG,1.1 MiB)。我尝试使用Apple documentation 中所述的 57x57,但更多测试人员报告了此问题,因此我决定提高分辨率。

这是指向我的清单的链接:itms-services://?action=download-manifest&amp;url=https://vandco.s3.amazonaws.com/JustAMap/JustAMap.plist

该应用由 Ad-Hoc Distribution 的配置文件进行代码签名。它安装并运行良好,问题只是无线下载期间的应用程序图标。

我想知道这是我的错还是 Apple 的错误,我该如何修复或解决它?

【问题讨论】:

安装过程中显示错误图像的唯一问题是什么? 是的,它只是在下载和安装过程中。当应用程序安装包中的图标时,它应该会出现。 我现在在 iPad 上遇到了同样的问题,只是不知道如何处理它。太令人沮丧了……就我而言,这绝对不是图像大小。另外,我正在使用 CloudFront 分发下载图像,因此响应时间肯定低于 1 秒 【参考方案1】:

iOS 9.2 似乎会等待短暂的超时以下载 Ad-Hoc 应用程序图标。如果图标足够大,或者互联网连接速度很慢,或者托管图标的服务器有明显的 ping 延迟,iOS 会中止下载图标并显示占位符。我用一个简单的 php 脚本在我自己的服务器上测量了超时。虽然我不知道确切的 ping 延迟,但我认为它是合理的短。所以我可以说超时应该是大约。 1 秒。

因此,如果服务器在 1 秒内未能响应图像,iOS 9.2 将中止下载图标。

无论如何它不会在 iOS 9.3.5 及更高版本中重现:iOS 会在一段时间内显示占位符,但仍在等待服务器响应,如果在下载应用程序之前服务器以图标响应,则占位符变为下载的临时图标。

【讨论】:

以上是关于不显示 Ad-Hoc 图标的主要内容,如果未能解决你的问题,请参考以下文章

应用程序的图标不显示了,为啥?

电脑桌面如何显示软件图标?

为啥大网站做的网站ICO图标能显示,我在线制作却不能显示

为啥图标显示不出来?

电脑软件有些图标不正常显示是怎么回事

我电脑上的文件图标不显示是怎么回事呢?