无效的 Apple Watch 图标文件名必须匹配模式“*<dimension>@<scale>x.png”

Invalid Apple Watch icon file names must match pattern "*<dimension>@<scale>x.png"

我正在尝试向我的应用程序提交更新以包含 Apple Watch 功能,但是每当我验证构建时,我都会收到下面屏幕截图中详述的错误。查看底部错误,我的文件名似乎与模式匹配,所以我看不出问题是什么。如果我能为 1 个图标找到正确的模式,那么我就可以全面应用相同的逻辑,但是我的运气并不好。

还有其他人遇到过这个问题吗?

我在尝试提交时遇到了同样的问题。我的问题是我正在与我的 iOS 应用程序目标和我的 WatchKit 应用程序目标共享我的图像资产文件。您需要为您的 WatchKit 应用程序创建一个单独的图像资产文件,并且它应该只包含 Apple Watch 的图像。这为我修好了。

我刚刚使用 this template 并且一切顺利,只要确保您的图像没有 alpha 通道即可。

我遇到了同样的问题。我就是这样修复它的:

1) 将我的名字格式更改为:Icon_24@2x.png

2) 从派生数据中删除了文件(为此我使用了 Watch Dog for XCode - https://itunes.apple.com/au/app/watchdog-for-xcode/id734258109?mt=12

3) 关闭并重新打开 Xcode

那么我的存档验证成功了。我认为派生数据删除是真正的修复,但我同时更改了我的图标名称格式,因此无法确定名称更改是否也起到了作用。

希望对您有所帮助。

我遇到了同样的问题,none 以上解决方案对我有用。

我没有提交应用程序,而是导出了一个 IPA,并查看了其中的内容。原来那里有我的图标的副本,但名称不同。

我根据找到的文件重命名了我的文件,将它们拖放到 AppIcon 中它们的位置,存档,提交并成功了!

WatchKit 图标的正确命名:
AppIcon24x24@2x.png
AppIcon27.5x27.5@2x.png
AppIcon29x29@2x.png
AppIcon29x29@3x.png
AppIcon40x40@2x.png
AppIcon44x44@2x.png
AppIcon86x86@2x.png
AppIcon98x98@2x.png

好吧,我终于自己弄明白了:这就是我所做的,并且尝试提交它大约 30 次,我终于没有遇到这个问题。只有我为 100% 所做的最后一件事才有所不同,但我想我会分享,因为这个问题是一个大约 6 小时的问题(连同其他我必须修复的垃圾,通常我不会为普通的通用 iOS应用)

1) 通过 Library/Developer/Xcode/ 或类似的方式删除了我所有的派生数据。

2) 清理文件夹

3) 将 Watch 的所有图标重命名为这些名称:

AppIcon24x24@2x.png
AppIcon27.5x27.5@2x.png
AppIcon29x29@2x.png
AppIcon29x29@3x.png
AppIcon40x40@2x.png
AppIcon44x44@2x.png
AppIcon86x86@2x.png
AppIcon98x98@2x.png

4) 使用一个 Images.xcassets 文件。该文件包含 3 个主要对象: a) iPhone 和 iPad 的图标 b) 手表图标 c) iPhone 和 iPad

的初始屏幕图像

5) 点击 Xcode 中 window 右上角的 show/hide 实用程序清理 Images.xcassets。 (第一个对象中只有 iPhone 和 iPad 的图标,第二个对象中只有 Watch Kit 图标)。此外,删除 CarPlay 图标

5.5) 同样转到常规应用程序的目标,在常规部分中,将应用程序源图标设置为只有 iPhone/iPad 图标的图标。然后转到手表套件应用程序,并将应用程序源图标设置为只有手表套件图标的那个

6) 浏览 3 个目标的每个文件夹并进入 info.plist,然后删除所有图标键。每个 info.plist 中有 1-3 个。我刚刚删除了它们。 info.plist 可以通过点击目标或查看文件夹层次结构来找到。这些是您需要查看的 3 info.plists: a) 常规应用程序的 plist b) watch kit 扩展的 plist c) watch kit 应用程序的 plist

7) 最后,我最后一次进入手表套件应用程序的 plist 并添加了一个新密钥:CFBundleIconFiles 当我添加这个新密钥时,Xcode 将名称更改为图标文件。 这是一个数组,我在每个手表图标文件的名称中一次添加一个: AppIcon24x24@2x.png AppIcon27.5x27.5@2x.png AppIcon29x29@2x.png AppIcon29x29@3x.png AppIcon40x40@2x.png AppIcon44x44@2x.png AppIcon86x86@2x.png AppIcon98x98@2x.png

终于!成功!希望这可以帮助每个陷入这个蹩脚问题的人。 P.S。抱歉,如果有格式问题。 Stack 认为我正在编写代码,所以不得不缩进,而我不是。

它也可能与图标的 alpha 通道(透明度)有关。更多信息:https://developer.apple.com/app-store/watch/

对我来说,问题是即使我不再支持 watchOS 1,我仍然提供了 watchOS 1 Long Look 图标 (44X44@2x)。一旦我在资产中取消选中 watchOS 1.0 的 bod 并删除了 no不再需要图标,我没有问题。

我遇到了同样的问题,花了我几乎一整天的时间来解决这个问题。在找到解决方案之前,我尝试了你们发布的所有建议,但最终都失败了。
这是我修复它的愚蠢方法:A​​LL App Icon 中的图标应该具有相同的 color profile,在我的例子中,两个图标与其他人不同。我改了其他两种颜色格式后就可以了

我有同样的错误,但结果是我的 27.5x27.5@sx.png 图片是 56x56,但苹果需要它是 55x55