另一个“'CFBundleIconName'丢失”问题
我知道已经有很多问题了SO标题几乎相同,许多答案提出了不同的解决方案。
在我看来,这背后的问题是苹果使用了一条非常通用的信息来涵盖非常广泛的问题。
我有一个 iOS 应用程序(使用编写Xamarin.Forms),这已经发表在AppStore。不过,最近我尝试上传更新,但得到了一个e-mail from Apple saying
亲爱的开发者,
我们发现您的应用程序最近交付存在一个或多个问题,
“库恩勒移动 2021”2021.1.35242 (35242)。请更正
出现以下问题,然后重新上传。
ITMS-90713:缺少 Info.plist 值 - Info.plist 键的值
捆绑包“com.kuhnle.mobile2021”中缺少“CFBundleIconName”。
使用 iOS 11 或更高版本 SDK 构建的应用程序必须在资产中提供应用程序图标
目录,并且还必须为此 Info.plist 键提供一个值。为了
更多信息请参阅http://help.apple.com/xcode/mac/current/#/dev10510b1f7 http://help.apple.com/xcode/mac/current/#/dev10510b1f7.
此致,
应用商店团队
这是我第一次收到这样的消息Apple,但我很快就明白我不是第一个这样做的人:在这里SO在其他论坛中,我找到了针对不同场景的许多解决方案,但遗憾的是我找到的答案都不能解决我的问题:我不断收到同样的消息Apple一次又一次。
接下来我将描述我的系统以及我已经尝试过的内容。
系统描述
配置详情
我正在建设iOS应用程序使用
-
Xamarin.Forms 52012年0月0日
- 作为我正在使用的IDE视觉工作室19Windows 10 上的 16.10。
- 为了构建iOS应用程序,我使用远程MacMiniMacOS 大苏尔 11.4
- Xcode 12.5
项目详情
如上所述,我已经尝试/排除了我发现的所有选项/解决方案:
- 我的项目已经使用了资产目录(自从之前上传到 AppStore 以来!),像素为 1024AppStore包括图标。
- My
Info.plist
已经有XSAppIconAssets
and CFBundleIconName
,看起来像:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>UIDeviceFamily</key>
<array>
<integer>1</integer>
<integer>2</integer>
</array>
<key>UISupportedInterfaceOrientations</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
</array>
<key>UISupportedInterfaceOrientations~ipad</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
<string>UIInterfaceOrientationPortraitUpsideDown</string>
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
</array>
<key>MinimumOSVersion</key>
<string>13.5</string>
<key>CFBundleDisplayName</key>
<string>Kuhnle Mobile 2022</string>
<key>CFBundleDevelopmentRegion</key>
<string>de</string>
<key>CFBundleLocalizations</key>
<array>
<string>de</string>
<string>en</string>
<string>es</string>
</array>
<key>CFBundleIdentifier</key>
<string>com.my.AppName</string>
<key>UILaunchStoryboardName</key>
<string>LaunchScreen</string>
<key>UIFileSharingEnabled</key>
<true/>
<key>LSSupportsOpeningDocumentsInPlace</key>
<true/>
<key>CFBundleShortVersionString</key>
<string>2022.1.34969</string>
<key>CFBundleVersion</key>
<string>34969</string>
<key>XSAppIconAssets</key>
<string>Assets.xcassets/AppIcon.appiconset</string>
<key>CFBundleIconName</key>
<string>AppIcon</string>
<key>UIUserInterfaceStyle</key>
<string>Light</string>
<key>NSCameraUsageDescription</key>
<string>By granting access to the camera you will be able to make photos that you consider specifically relevant for the current document and have them stored directly in its associated folder.</string>
</dict>
</plist>
- My 〜ios.csproj文件确实包含
ImageAssets
,看起来像这样
<ItemGroup>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Contents.json">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected] /cdn-cgi/l/email-protection">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected] /cdn-cgi/l/email-protection">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected] /cdn-cgi/l/email-protection">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-76.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-761.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected] /cdn-cgi/l/email-protection">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected] /cdn-cgi/l/email-protection">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-AppStore1024.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Notification20.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected] /cdn-cgi/l/email-protection">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Settings29.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small-40.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small-401.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected] /cdn-cgi/l/email-protection">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected] /cdn-cgi/l/email-protection">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected] /cdn-cgi/l/email-protection">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected] /cdn-cgi/l/email-protection">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected] /cdn-cgi/l/email-protection">
<Visible>false</Visible>
</ImageAsset>
</ItemGroup>
问题描述
话虽这么说:我可以使用 VS 构建、存档和上传项目,但是,在上传项目后,我会收到一封电子邮件,其中包含本文开头的消息。此外,当我去检查时ipa文件在我的 macMini 中,我看不到其中包含的任何资源payload文件夹,没有资产车文件也不包含:尝试上传此文件ipa结果来自一封电子邮件Apple与相同的消息。
我真的很感激任何解决这个问题的想法,因为我已经处理这个问题几天了!