我有一个应用程序,它最初是在 iOS 5 上运行的,并且从那时起就一直在更新。对于 iOS 7,我已改用资产目录来存储所有资源,这很好,而且看起来效果很好。但是,当我尝试提交给 Apple 时,我收到验证错误:
图像路径无效 - 在键“CFBundleIconFiles”下引用的路径中找不到图像:“[电子邮件受保护] /cdn-cgi/l/email-protection'
其他图标我也遇到同样的错误。这些图标do出现在资产目录中,而且据我所知,名称(具体到大小写)完全匹配。资产目录位于“复制捆绑资源”中,当我在 iPhone 和 iPad(iOS 7 中)以及 iOS 6 模拟器中运行该应用程序时,所有资源都出现在正确的位置。
我已更新该应用程序以使用 iOS 6 的最低部署目标。
那么,如何成功向 Apple 提交更新呢?我需要 Info.plist 中的参考文献吗?我还应该检查其他设置吗?该警告是否是虚假的并且我应该忽略(在启动雷达后)?
当为 iOS 6 及更低版本编译资产目录时,图像将放置在应用程序包的根目录中,就像您只是以旧方式复制它们一样。当发生这种情况时,Apple 根据资产名称而不是文件名来命名图像,这意味着我们仍然可以使用+[UIImage imageNamed:]
获取 iOS 6 及更低版本上的资源。
当我们在资产目录中设置以下图标时,应用程序图标资产也是如此:
它们的编译方式如下:
由于iOS 6仍然是iOS 6,因此必须在Info.plist中引用这些文件,否则现有系统将无法工作。查看此测试应用程序的已编译 Info.plist,您会看到 Xcode 添加了CFBundleIconFiles
对我们来说,所以我们不需要。
我已经上传了我以前的测试项目github.com/danielctull-tests/AssetTest https://github.com/danielctull-tests/AssetTest.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)