【问题标题】:My iOS app is not showing App Icon in Simulator我的 iOS 应用程序没有在模拟器中显示应用程序图标
【发布时间】:2015-08-06 21:19:24
【问题描述】:

我已在资产目录以及我的应用程序中添加了所有必需的图标,但它没有在模拟器上显示图标

【问题讨论】:

  • 查看项目的图片资源目录。
  • 您的 Images.assets 看起来如何?
  • 分享Images.xcassets 的屏幕截图。你在那里添加了你的图片吗?
  • 我的资产目录有所有的图像,我也将所有图像拖放到特定位置,但它无法在模拟器上显示....我一次又一次地删除应用程序,但它无法解决它??? #Sulthan #Mrug
  • 现在看那张图片#Shruti

标签: ios objective-c iphone xcode6


【解决方案1】:

只需从模拟器中删除应用程序,清理项目(点击CMD + K)并再次运行

【讨论】:

  • 直到出现问题#l0gg3r
  • hm.. 还要检查图标的大小是否符合要求。
  • 是的,所有尺寸都很好......但它无法在模拟器上显示图标......它正确显示启动画面但图标出现问题#l0gg3r
【解决方案2】:

查看此链接App Icon not showing up, although I have added in Xcode 5

这可能是一个 XCode 6 错误,添加的图标实际上并未包含在应用程序包中,但您可以通过转到构建阶段,展开复制包资源,然后按底部的“+”号来解决它手动将图标文件添加到此类别。

此外,iOS 5/6 似乎有一个错误,即即使图标文件包含在包中,屏幕也不会更新应用程序图标。要解决此问题,您可以将应用程序图标拖到文件夹中,然后 iOS 将更新它的外观。

【讨论】:

  • 所有 iconz 都在展开 Copy Bundle Resources 中......我可以删除那个 iconz 并手动添加吗???
  • @SoftCoder 很高兴我能帮到你:)
【解决方案3】:

在 iPhone 7、iPhone 8 和 iPhone X 模拟器(Xcode 9、iOS 11)上,如果我的应用程序图标包含某些颜色,它不会显示!

以下是两个图标图像,60pt@2x,均使用 Adob​​eRGB 颜色配置文件。我使用 ImageMagick 生成了这些 - 唯一的区别是它们是不同的颜色。

图标 A:#74B3BE

此图标在模拟器中显示正常 (iPhone 8)

图标 B:#E58921

此图标在模拟器中不起作用:

将图标 B 颜色的单个像素添加到图标 A 中也会导致其停止工作。

从图标中删除 Adob​​eRGB 颜色配置文件可以解决问题,但会导致颜色褪色。我使用的解决方案是先将图标转换为sRGB配置文件(我使用了ImageMagick)。

这是否是物理 iPhone 8 / iPhone X 的问题还有待观察,因为它们尚未发售。其他模拟硬件(例如 iPhone 6s)即使运行 iOS 11 也不会出现此问题。

附录:在我的测试过程中(我已经迷失了一天!)我还观察到图标中的像素密度元数据会影响图标是否出现在模拟器中。 72dpi 可以,150dpi 不行。不幸的是,我更改了有问题的项目,此后一直无法重现该案例。

【讨论】:

  • 将应用程序图标色域从“Any”更改为“sRGB 和 Display P3”,然后将相同的图标添加到 3x Display P3 正方形为我解决了这个问题。
【解决方案4】:

iOS 11 Xcode 9

如果您使用的是 CocoaPods,请立即停止!

问题:

基本上,Xcode 9 / iOS 11 添加资产文件的方式和 CocoaPods 的一些奇怪干预导致图标文件不包括在内。

修复:

将这个 sn-p 复制并粘贴到你的 podfile 中(我知道......它很难看):

post_install do |installer|
    copy_pods_resources_path = "Pods/Target Support Files/Pods-IconTest/Pods-IconTest-resources.sh"
    string_to_replace = '--compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"'
    assets_compile_with_app_icon_arguments = '--compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" --app-icon "${ASSETCATALOG_COMPILER_APPICON_NAME}" --output-partial-info-plist "${BUILD_DIR}/assetcatalog_generated_info.plist"'
    text = File.read(copy_pods_resources_path)
    new_contents = text.gsub(string_to_replace, assets_compile_with_app_icon_arguments)
    File.open(copy_pods_resources_path, "w") {|file| file.puts new_contents }
end

请务必将第二行路径名中的“IconTest”值更改为您的项目名称。 运行“pod update”,瞧,你的应用图标回来了。

来源

此修复来自 Cocoapods 团队。请参阅此处的线程: https://github.com/CocoaPods/CocoaPods/issues/7003

【讨论】:

  • 我希望我能投票 100 次!这么多时间浪费在这上面。谢谢!
  • 不适用于我 xcode 12 iphone 11 14.0
【解决方案5】:

遇到同样的问题。

您还应该检查“Project -> Build Settings”下的“Asset Catalog App Icon Set Name”键值是否正确。

在我的情况下它是空的(只是“”)。当我添加正确的值(链接器将在 Assets.xcassets 中找到应用程序图标的部分)时,在我的情况下为“AppIcon”,一切都按预期工作。

由于我在 Assets.xcassets 中有很多资源,因此我将一些资源重新排列在不同的部分等中,因此 AppIcon 部分不在目录的“根目录”中。也许这就是问题的原因。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-06-30
    • 1970-01-01
    • 2014-01-28
    • 2018-12-15
    • 2020-09-28
    • 1970-01-01
    • 2019-01-19
    • 2014-06-26
    相关资源
    最近更新 更多