在为 beta 测试人员分发我的应用程序时遇到了一个奇怪的问题。这是关于下载过程中的应用程序图标。
当用户通过指向应用 list 的链接并点击“安装”时,可能会出现 2 个问题:
- 在应用准备好启动之前,主屏幕上的应用图标根本不会出现。
- 将出现应用图标占位符,而不是 list 中由 URL 托管的我的应用图标 (please see screenshot)。应用完全安装后, bundle 中的应用图标就会出现。
问题转载于:
- iPhone 5s、iOS 9.2.1
- iPhone 5s、iOS 10.0.2
- iPhone 4s、iOS 9.3.5
在装有 iOS 9.2 的 iPad Air (A1474) 上没有问题。
这是我的 list :
<?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&Co Ltd.</string>
<key>title</key>
<string>Просто.Карта</string>
</dict>
</dict>
</array>
</dict>
</plist>
应用程序图标为 1024x1024(PNG,1.1 MiB)。我尝试使用 Apple documentation 中所述的 57x57 ,但更多的测试人员报告了这个问题,所以我决定提高分辨率。
这是我的 list 的链接:itms-services://?action=download-manifest&url=https://vandco.s3.amazonaws.com/JustAMap/JustAMap.plist p>
该应用由 Ad-Hoc Distribution 的配置文件进行代码签名。它安装并运行良好,问题只是无线下载期间的应用程序图标。
我想知道这是我的错还是 Apple 的错误,我该如何修复或解决它?
Best Answer-推荐答案 strong>
iOS 9.2 似乎会等待短暂的超时以下载 Ad-Hoc 应用程序图标。如果图标足够大,或者互联网连接速度很慢,或者托管图标的服务器有明显的 ping 延迟,iOS 会中止下载图标并显示占位符。我用一个简单的 PHP 脚本在我自己的服务器上测量了超时。虽然我不知道确切的 ping 延迟,但我认为它是合理的短。所以我可以说超时应该是大约。 1 秒。
因此,如果服务器在 1 秒内未能响应图像,iOS 9.2 将中止下载图标。
无论如何它不会在 iOS 9.3.5 及更高版本中重现:iOS 会在一段时间内显示占位符,但仍等待服务器响应,如果在下载应用程序之前服务器以图标响应,则占位符变为下载的临时图标。
关于ios - 不显示 Ad-Hoc 图标,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/39880726/
|