Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding ImageCropper.Forms to my iOS project breaks our Apple Store deployment #52

Open
edgiardina opened this issue Dec 2, 2021 · 2 comments

Comments

@edgiardina
Copy link

This is a bizarre one, but using ImageCropper.Forms.Fix.v2 nuget package version 1.1.5 breaks our iOS deployment, specifically using Azure DevOps. With no other changes (isolated specifically to this commit adding the image cropper), our fastlane deployment projects no longer seem to have Asset Catalogs configured correctly. Our assets catalogs / ipa files build fine without ImageCropper. My only guess is whatever iOS specific dependency is used for image cropping is messing with our asset catalogs somehow.

2021-12-02T15:16:55.5956800Z [15:16:55]: ERROR ITMS-90022: "Missing required icon file. The bundle does not contain an app icon for iPhone / iPod Touch of exactly '120x120' pixels, in .png format for iOS versions >= 7.0. To support older versions of iOS, the icon may be required in the bundle outside of an asset catalog. Make sure the Info.plist file includes appropriate entries referencing the file. See https://developer.apple.com/documentation/bundleresources/information_property_list/user_interface" 2021-12-02T15:16:55.6060690Z ERROR ITMS-90023: "Missing required icon file. The bundle does not contain an app icon for iPad of exactly '76x76' pixels, in .png format for iOS versions >= 7.0. To support older operating systems, the icon may be required in the bundle outside of an asset catalog. Make sure the Info.plist file includes appropriate entries referencing the file. See https://developer.apple.com/documentation/bundleresources/information_property_list/user_interface" 2021-12-02T15:16:55.6168670Z ERROR ITMS-90023: "Missing required icon file. The bundle does not contain an app icon for iPad of exactly '167x167' pixels, in .png format for iOS versions supporting iPad Pro. To support older operating systems, the icon may be required in the bundle outside of an asset catalog. Make sure the Info.plist file includes appropriate entries referencing the file. See https://developer.apple.com/documentation/bundleresources/information_property_list/user_interface" 2021-12-02T15:16:55.6176460Z ERROR ITMS-90023: "Missing required icon file. The bundle does not contain an app icon for iPad of exactly '152x152' pixels, in .png format for iOS versions >= 7.0. To support older operating systems, the icon may be required in the bundle outside of an asset catalog. Make sure the Info.plist file includes appropriate entries referencing the file. See https://developer.apple.com/documentation/bundleresources/information_property_list/user_interface" 2021-12-02T15:16:55.6281800Z ERROR ITMS-90704: "Missing App Icon. An app icon measuring 1024 by 1024 pixels in PNG format must be included in the Asset Catalog of apps built for iOS, iPadOS, or watchOS. Without this icon, apps cannot be submitted for review. For details, see https://developer.apple.com/ios/human-interface-guidelines/icons-and-images/app-icon/." 2021-12-02T15:16:55.7127900Z [15:16:55]: [iTMSTransporter] [2021-12-02 15:16:55 UTC] <main> DBG-X: The error code is: 1102

@edgiardina
Copy link
Author

Confirmed by downloading the .ipa file generated before and after adding ImageCropper lib:

xcrun --sdk iphoneos assetutil --info Assets.car

Reveals that your sample1 assets file from your sample project is being created in the .ipa and overwriting the asset catalog from my xamarin forms iOS project.

xcrun --sdk iphoneos assetutil --info Assets.car objc[74732]: Class OS_at_encoder is implemented in both /usr/lib/libate.dylib (0x1fc68ca58) and /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/usr/bin/assetutil (0x101222010). One of the two will be used. Which one is undefined. [ { "Appearances" : { "UIAppearanceAny" : 0 }, "AssetStorageVersion" : "Xcode 12.3 (12C33) via IBCocoaTouchImageCatalogTool", "Authoring Tool" : "@(#)PROGRAM:CoreThemeDefinition PROJECT:CoreThemeDefinition-490\n", "CoreUIVersion" : 689, "DumpToolVersion" : 735, "Key Format" : [ "kCRThemeScaleName", "kCRThemeIdentifierName", "kCRThemeElementName", "kCRThemePartName" ], "MainVersion" : "@(#)PROGRAM:CoreUI PROJECT:CoreUI-689.3\n", "Platform" : "ios", "PlatformVersion" : "14.3", "SchemaVersion" : 2, "StorageVersion" : 17, "Timestamp" : 1638307236 }, { "AssetType" : "Image", "BitsPerComponent" : 8, "ColorModel" : "RGB", "Colorspace" : "srgb", "Compression" : "deepmap2", "Encoding" : "ARGB", "Name" : "sample1", "NameIdentifier" : 64634, "Opaque" : true, "PixelHeight" : 480, "PixelWidth" : 1024, "RenditionName" : "Photo.png", "Scale" : 2, "SHA1Digest" : "7A17038AE14B93EFB778DE2AF2397EBEBF39A94E", "SizeOnDisk" : 397549, "Template Mode" : "automatic" } ]

@edgiardina
Copy link
Author

Looks like the root of this has been addressed here:

https://developercommunity.visualstudio.com/t/nuget-reference-causes-ios-asset-catalogue-to-not/550021

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant