【问题标题】:Invalid Image Path - No image found at the path referenced under key "CFBundleIconFile": Icon.png无效的图像路径 - 在键“CFBundleIconFile”下引用的路径中找不到图像:Icon.png
【发布时间】:2013-10-10 13:53:41
【问题描述】:

在将我的应用上传到 App Store 时,我从 Application Loader 收到此错误。我的应用程序是在 iOS 3.0 时开发的,并且仍然针对 iOS 4.3 及更高版本。我最近更新了该应用程序以使其与 iOS7 兼容。但是应用程序加载器总是向我返回这种类型的错误。我搜索了互联网,发现我并不孤单。所以我创建了这篇文章,希望我发现的有关应用程序图标的信息可以帮助其他人。

【问题讨论】:

    标签: ios ios7 application-loader


    【解决方案1】:

    如果您的应用支持 iOS 5.0 及更高版本,则可以将所有图标文件移至资产目录。

    如果您的应用仍需要支持较低版本的 iOS(如我的),解决方案是在项目 plist 文件中使用 CFBundleIconFiles 键。在我的例子中,我的应用是一个仅限 iPhone 的应用,所以我做了以下操作:

    1. 准备 8 个图标文件:两个适用于 iOS6 及更早版本的应用程序图标(57x57 和 114x114),两个适用于 iOS7 的图标(60x60 和 120x120),两个适用于 iOS 6 及更早版本(29x29 和 58x58)的 Spotlight 搜索/设置图标,以及聚光灯的两个图标(40x40 和 80x80)。文件必须是 PNG 文件。将这些文件命名为任意名称,但高分辨率文件名的格式必须为 lowResolutionName@2x.png
    2. 在项目 plist 文件中,编辑 CFBundleIconFiles 键(它是一个数组)以包含上述图标文件的名称。只需要低分辨率文件名,不应包含扩展名 (.png)。 Xcode 会自动查找高分辨率文件,只要它们的名称符合约定(使用@2x)。
    3. 确保您的项目不包含 Asset Catalog 文件夹
    4. 如果上述操作正确,当您检查应用程序目标的“常规”部分时,您应该会看到 Xcode 已在“应用程序图标”部分下的正确位置列出了所有图标文件。
    5. 如果您的应用需要支持 iOS 3.1 及更早版本,则需要额外制作四个图标文件。这些文件的大小和名称如下:Icon.png (57x57)、Icon@2x.png (114x114)、Icon-Small.png (29x29)、Icon-Small@2x.png (58x58)。固定名称是 iOS 要求的,不能更改。但只要你这样命名图标文件,你就不需要做任何额外的事情了。

    完成这些步骤后,您在将应用上传到 App Store 时应该不会有任何图标问题。

    资产目录简化了上述一些步骤,例如,生成低分辨率图标文件(我的猜测)。

    我从“iOS 人机界面指南”、“iOS 应用程序编程指南”和“信息属性列表参考”中获得了上述信息。搜索“应用程序图标”,一切都会得到解释。

    【讨论】:

    • 3. 是什么意思?我应该删除 .xcassets 文件夹吗?
    • 您不需要物理删除文件夹。我的意思是在“Target setting->General”窗口中,“App Icons”和“Launch Images”的“source”是“don't use assets catalogs”。
    • 上面的第 2 点就是我所需要的。我也在使用资产目录并针对 iOS4.3 及更高版本。
    【解决方案2】:

    听起来你可能和我一样接受了 XCode 5.0 的建议,将你的图标文件迁移到目录中。

    执行此操作时,您需要从项目的 .plist 文件中删除 CFBundleIconFile(“图标文件”)参数。这是旧的做法,一旦你迁移了你的图标文件,显然那个参数是不正确的。

    奇怪的是 XCode 的迁移不会自动为您解决这个问题。会非常适合 Apple 来帮助您。

    【讨论】:

    • 使用 Spotlight 搜索定位 .plist 文件,该文件在 xCode 中可能为“红色”。对于我的应用,我删除了以下部分: CFBundleIconFilesiqfitfun_lite_icon_57_w0_shadow.pngiqfitfun_lite_icon_72_w0_shadow.pngiqfitfun_lite_icon_114_w0_shadow.png
    • 我必须删除此答案中提到的 CFBundleIconFile 和上面评论中提到的 CFBundleIconFiles (复数)。谢谢各位!
    • 我的 google-fu 又让我失望了。我自己找到了解决方案,并在找到你的答案之前写了答案:) stackoverflow.com/a/21735466/886653
    • 基本上,您可以删除任何包含 icon<key> 以及它后面的<string><dict><array>。我的应用删除了所有 3 个:<key>CFBundleIconFile</key><key>CFBundleIcons</key><key>CFBundleIcons~ipad</key>
    • @bCliks 我做到了,虽然我不知道现在是怎么回事。也许我在这里的问题/答案也可以提供帮助? stackoverflow.com/questions/24610313/app-cache-ios-phonegap
    【解决方案3】:

    我基本上进入了 info.plist 并删除了我不需要的图标。我开始使用 Cocos2d 模板,大部分都不需要,所以我把它们都删除了。当我将程序存档并去验证它时,它给出了诸如“这个图标和那个图标在哪里?”之类的错误。好吧,我把它们都删了。但是在 info.plist 中仍然列出了所有 13 个图标,所以我只是删除了所有我删除的图标。

    【讨论】:

      【解决方案4】:

      我的解决方案是:在“构建阶段”中,在“复制捆绑资源”下,单击“+”并选择所有图标。

      祝你好运。

      【讨论】:

      • 我想在这里说明一点。应该直接添加图标,没有内部文件夹等......只是图标。
      【解决方案5】:

      你的食谱很完美。

      就我而言,

      我在支持文件中选择了 NameOfMyApp-info.plist。

      我只需要打开 Key: Icon 文件。

      我刚刚删除了所有图像字符串。 (提交中的错误消息正是关于这些图像的。

      我已经尝试再次提交并且:提交成功。

      谢谢

      【讨论】:

      • 我删除了plist文件中的“icon.png”字符串,终于成功了。
      【解决方案6】:

      以上解决方案均不适用于我的特定实例。

      最后,以下确实有效,以防其他人遇到同样的问题:

      1. 从 资产目录
      2. 在导航器窗格中的目标属性中删除 然后为应用程序图标读取“使用资产目录” - 这将重新创建一个空的应用程序图标集
      3. 选择您想要的尺寸并通过从导航窗格中拖动来分配正确的图像
      4. 删除 CFBundleIconFiles 键(iPad 有第二个键)
      5. 重建存档

      【讨论】:

      • 谢谢。我在通用应用程序的空白处有 CarPlay 的图标……显然不兼容 CarPlay。该图标的存在导致了问题。
      【解决方案7】:

      为了解决这个问题,我不得不再次添加一个图标图像。

      错误提到 'CFBundleIcons':AppIcon40x40 文件,当我检查 AppIcon 图像下的 Images.xcassets 时,将图像设置为 Iphone Spotlight IOS 7-9 40pt 实际上分辨率错误,所以我再次从 Finder 中拖动了 80x80 分辨率的图标(40x40 乘以比例因子 2x)。

      【讨论】:

        【解决方案8】:

        这个错误看起来可能有多种原因。就我而言,两个图标文件的像素尺寸错误(由cordova 生成)。所以你可以检查一下。

        【讨论】:

          【解决方案9】:

          在构建 Cordova 项目时发现了同样的问题。

          info.plist 中使用icon.png 删除CFBundleIcon 为我解决了这个问题

          【讨论】:

          • 这对我有用,非常感谢:)
          猜你喜欢
          • 2016-07-23
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-03-25
          • 1970-01-01
          • 2013-10-31
          • 1970-01-01
          相关资源
          最近更新 更多