Ios Xamarin警告:应用程序图标设置为“;AppIcons“;有两个未分配的孩子

Ios Xamarin警告:应用程序图标设置为“;AppIcons“;有两个未分配的孩子,ios,xamarin,mono,xamarin.ios,xamarin-studio,Ios,Xamarin,Mono,Xamarin.ios,Xamarin Studio,我在编译时收到以下警告: 警告: /用户/某些用户/项目/SomeApp/SomeApp/SomeApp.csproj(构建) ->/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/iOS/Xamarin.iOS.Common.targets (\u CoreCompileImageAssets目标)-> Resources/Images.xAssets:actool警告:应用程序图标集 “AppIcons”有2个未分配的子项。

我在编译时收到以下警告:

警告:

/用户/某些用户/项目/SomeApp/SomeApp/SomeApp.csproj(构建) ->/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/iOS/Xamarin.iOS.Common.targets (\u CoreCompileImageAssets目标)->

Resources/Images.xAssets:actool警告:应用程序图标集 “AppIcons”有2个未分配的子项。

1个警告

我已经为应用程序图标提供了每个图像(手表/汽车除外)。
Contents.json
文件中没有“未分配”值。我还尝试取消设置每个图像,然后重新设置。我仍然得到警告

目前,我正在使用Xamarin Studio 5.9.7(构建22)、Xamarin.iOS 9.0.1.29和Mono 4.0.4、Xcode 7.0.1(8228)构建7A1001。所有这些都在MacOSX10.10.5上运行


如何删除警告?

iOS 9.2.1、Xcode 7.2.1、ARC启用

如果JSON文件看起来不错,那么资产目录可能已经损坏;当您拖放文件时,有时会发生这种情况,可能会意外地从路径处的文件夹中删除文件,或者更改资源在Xamarin中的路径

不管是哪种方式,请查看Xamarin是否有某种方式可以删除资产目录并再次将其添加,然后指定应用程序将在哪个iOS目标和设备上运行以正确配置资产目录

设置资源目录后,必须将每个资源再次添加到资源目录中


希望这有帮助。干杯

如果在.AppIcons.appiconset文件夹中有未在Contents.json文件中使用/引用的图标,则会显示警告“应用图标集”AppIcons“有*未分配的子项”。查看文件夹中的所有图标,查看Contents.json中引用的所有图标,然后从文件夹中删除额外的图标。即使未包含在项目中也未被引用的图标将导致编译器警告。

我也有同样的问题。我已经清理了项目并重新编译,一切都很好。另外,当一个图标丢失时,它只是在我清理项目时添加的。

我对Mac、Xamarin、Xcode 9.2的VS也有同样的问题。在将我的应用程序图标添加到Assets.xcsets后,我看到了“Appicons unassigned children”错误。对我有效的解决方案是退出VisualStudio并重新启动它。重新启动Visual Studio后,构建继续进行,没有出现错误。

我遇到了类似的问题,原因是(可能)Contents.json已损坏。My Media.xAssets位于资源目录下。我从头开始重新创建了资产目录,现在它似乎工作正常

步骤:

  • 备份您的Media.xcsets目录
  • 创建新的AppIcons资产(在解决方案视图中,导航到iOS项目>资产目录,然后双击介质)
  • 单击添加按钮(左上角),然后选择添加应用图标并启动Image->Add App Icon。这将创建一个新的AppIcos.appiconset目录(可能在项目根目录中),并生成一个空的Contents.json文件
  • 使用相应的“…”按钮添加必要的图标
  • 查看是否仍然收到编译警告
  • 如果要将Media.xcsets移动到资源或其他目录下:
  • 将Media.xcsets移动到所需的子目录
  • 在文本编辑器中打开Info.plist和.project.csproj文件,手动编辑所有ImageAsset标记,将其目录从Media.xAssets更改为Resources\Media.xAssets。确保没有重复的行引用相同的资产
  • 删除备份媒体.xcsets目录

  • 还有一次,我收到了同样的警告。因为这是我在相关的
    内容中使用的唯一一个
    iPad
    应用程序。json
    来自
    xcasets

      "images": [
        {
          "scale": "1x",
          "idiom": "ipad",
          "filename": "Group@1x.png"
        },
    
    我改成了这个

      "images": [
        {
          "scale": "1x",
          "idiom": "universal",
          "filename": "Group@1x.png"
        },
    

    错误消失了。您必须对每个条目执行此操作。

    我还收到了另一个警告,上面是:

    MyAPP/MyApp.IOS/Obj/IpgE/Debug /DeaveCudis/Ipple 121-137/ACToo/Calon AsSts/AsStx.xCasSt:AcOrthCurror:无法在9之前目标发布时为平台“IOS”启用按需资源。考虑禁用EnabLyON-DeMand资源构建设置。
    通过从8.0升级到9.0,我的错误消失了。我还认为问题来自在`Assets.xcsets.

    中创建
    ImageSet
    。我的iOS csproj文件包含对旧xcsets的已删除文件的旧引用。
    只需编辑.csproj文件并删除这些额外的引用。

    可能尝试为手表/汽车添加图像?警告是否会以任何方式影响应用程序的性能?如果不是,我建议忽略它。尝试设置所有图像但未成功。如果删除一些图像,未分配的儿童数量会增加,但至少为2.No、 性能似乎没有受到影响,但警告很烦人……对iOS 9.1的更新没有改变什么。这与Xamarin无关。请参阅以获取答案。@asp\U net:谢谢添加。我查看了
    Contents.json
    ,但每个条目(信息除外)具有
    filename
    属性。我仍然收到警告。如果您愿意,我可以在此处添加文件内容,以便您可以自己查看。我已重新创建了资产目录,但没有任何帮助。现在我转到Visual Studio而不是Xamarin Studio,现在消息已不存在。但我会记住您的提示。谢谢。听起来不错!祝您一切顺利幸运的是!我最近遇到了完全相同的问题,但是在Xcode 7.2.1中删除和添加资产目录对我很有效。这不是答案,而是注释这实际上对大多数图标都有帮助!还请注意,您可能会删除图标文件,这修复了您描述的问题,但随后会出现错误,因为其中有相应的行也需要删除的.csproj文件。这些文件不会显示在IDE中的任何位置,因此您需要在需要时手动编辑.csproj文件