Xcode 9.2的App Icon命名规范及图标导入失败问题求助
解决Xcode 9.2中App Icon未分配的警告问题
嘿,我来帮你搞定这个图标分配的麻烦!你遇到的"The app icon set 'AppIcon' has 23 unassigned children"警告,本质是Xcode 9.2对AppIcon资产目录的匹配逻辑变严格了——你下载的图标命名和Xcode当前期望的槽位对应关系没对上,导致系统没法自动分配,所以才弹出这个警告。
下面是具体的解决步骤,亲测有效:
1. 先搞懂Xcode 9.2的AppIcon槽位要求
打开你的Assets.xcassets里的AppIcon,把鼠标悬停在每个空白槽位上,就能看到它对应的尺寸要求(比如“iPhone App Icon 60pt@3x”,实际像素是180x180)。你下载的图标里,大部分是符合当前iOS版本需求的,还有一部分是旧系统的废弃尺寸(比如57x57、72x72这类,针对iOS 8及更早版本)。
2. 手动将图标拖到对应槽位
别再把一堆图标直接丢进AppIcon窗口了,逐个拖到匹配的槽位里:
Icon-App-20x20@1x.png(20x20)→ iPad的20pt@1x槽位Icon-App-20x20@2x.png(40x40)→ iPhone的20pt@2x或iPad的20pt@2x槽位Icon-App-20x20@3x.png(60x60)→ iPhone的20pt@3x槽位Icon-App-29x29@1x.png(29x29)→ iPad的29pt@1x槽位Icon-App-29x29@2x.png(58x58)→ iPhone/iPad的29pt@2x槽位Icon-App-29x29@3x.png(87x87)→ iPhone的29pt@3x槽位Icon-App-40x40@1x.png(40x40)→ iPad的40pt@1x槽位Icon-App-40x40@2x.png(80x80)→ iPhone/iPad的40pt@2x槽位Icon-App-40x40@3x.png(120x120)→ iPhone的40pt@3x槽位Icon-App-60x60@2x.png(120x120)→ iPhone的60pt@2x槽位Icon-App-60x60@3x.png(180x180)→ iPhone的60pt@3x槽位Icon-App-76x76@1x.png(76x76)→ iPad的76pt@1x槽位Icon-App-76x76@2x.png(152x152)→ iPad的76pt@2x槽位Icon-App-83.5x83.5@2x.png(167x167)→ iPad Pro的83.5pt@2x槽位ItunesArtwork@2x.png(1024x1024)→ 最底部的App Store iOS 1024pt槽位
3. 清理废弃的旧尺寸图标
如果你的项目Deployment Target是iOS 9及以上,那这些旧尺寸图标完全不需要,可以直接删掉:
Icon-App-57x57@1x.png、Icon-App-57x57@2x.png(旧iPhone非Retina/Retina图标)Icon-App-60x60@1x.png(旧iPad图标)Icon-App-72x72@1x.png、Icon-App-72x72@2x.png(旧iPad非Retina/Retina图标)Icon-App-76x76@3x.png(无对应槽位)Icon-Small-50x50@1x.png、Icon-Small-50x50@2x.png(旧iPad图标)
删掉这些之后,剩下的图标都对应上槽位,警告自然就消失了。
为什么之前没问题现在不行?
大概率是Xcode版本更新后,资产目录的自动匹配规则变严格了——之前的命名能被旧版Xcode识别,现在必须严格对应槽位的尺寸描述;另外,Xcode 9.2开始对废弃的图标尺寸不再提供槽位,导致这些旧图标变成“无家可归”的未分配项。
内容的提问来源于stack exchange,提问作者Joseph Beuys' Mum
相关产品推荐
相关产品推荐

