I have different Info.plist files for different environments e.g. Dev.Info.plist.
NOTE: I copy and paste all contents of Dev.Info.plist into Info.plist before I start my build.
When I build & run locally, I have no issues but I build & run against iPhoneSimulator. My CI/CD pipeline runs against iPhone and for some reason, it does not pick up my image assets.
Error
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/iOS/Xamarin.Shared.targets(1057,3): error : System.IO.FileNotFoundException: Could not find file "/Users/runner/work/1/s/MyApp.iOS/obj/iPhone/Dev/actool/bundle/my20x20.png" [/Users/runner/work/1/s/MyApp.iOS/MyApp.iOS.csproj]
iOS CSPROJ
<ImageAsset Include="Assets.xcassets\AppIcons_Dev.appiconset\20.png">
<Visible>false</Visible>
</ImageAsset>
Dev.Info.Plist
<key>XSAppIconAssets</key>
<string>Assets.xcassets/AppIcons_Dev.appiconset</string>
CodePudding user response:
The problem was that my iOS AppIcons in the AssetCatalog had a bit depth of 24.
This comes from saving them as PNG without marking them as transparent. When marked as transparent they have a bit depth of 32.
After that, the build pipeline worked as intended.