I am trying to submit my App CaptureEclipse (AppleID 1567295651; AlmadenObservatory.CaptureEclipse) for release on the Apple Mac App Store. I am having a problem with getting the App Validated. The app includes the Canon EDSDK framework which includes two bundles CHHLLITE and EdsImage. Using the simple path of submitting the running code to Archive I get the following error during Validate for each bundle
CFBundleIdentifier Collision The info.plist …. Is already in use by another application.
I have tried following the instructions I have found from Apple Websites {cited below} to no avail. I have also tried following advice from 3rd party websites. Some of them allow the app to validate, but then it is unable to load the bundles.
Note that A-5 asked the same question for the same code on the developer forum 4 years ago and never received an answer.
This cannot be a unique problem and I am sure it is an RTFM, but I cannot find the proper “M” to “R”. Please help
References - Apple
A-1 Signing a Mac Product For Distribution - https://developer.apple.com/forums/thread/128166
Does not discuss included frameworks
robhawley@Robs-Mac-Pro EDSDK.framework % codesign -f -v -s "Apple Distribution: robert hawley" Versions/A
Versions/A: replacing existing signature
Versions/A: signed bundle with Mach-O thin (x86_64) [com.canon.edsdk]
Code Ran Successfully
Validate: Both bundles reported CFBundleIdentifier Collision {} already in use by another application
A-3 Code Signing Tasks
followed “Using Library Validation” but did not change result
A-4 Developer Forums: CFBundleIdentifier Collision for using FMOD
https://developer.apple.com/forums/thread/678131
Similar to O-2 below (but did not suggest resigning). I gave it a try robhawley@Robs-Mac-Pro Framework % codesign -f -v --remove-signature EDSDK.framework/Versions/A/CHHLLite.bundle EDSDK.framework/Versions/A/CHHLLite.bundle: replacing existing signature EDSDK.framework/Versions/A/CHHLLite.bundle: signed [] robhawley@Robs-Mac-Pro Framework % codesign -f -v --remove-signature EDSDK.framework/Versions/A/EdsImage.bundle EDSDK.framework/Versions/A/EdsImage.bundle: replacing existing signature EDSDK.framework/Versions/A/EdsImage.bundle: signed [] robhawley@Robs-Mac-Pro Framework % codesign -f -v --remove-signature EDSDK.framework/Versions/A/EDSDK EDSDK.framework/Versions/A/EDSDK: replacing existing signature EDSDK.framework/Versions/A/EDSDK: signed []
The result is that code sign failed during the XCode build probably because the signing identifier (mine) did not match what was in the bundle (theirs). When I modified the bundles as suggested in O-2 then the bundles did not load
A-5 Developer Forums: CFBundleIdentifier Collision. The Info.plist CFBundleIdentifier value 'com.canon.EdsImage
https://developer.apple.com/forums/thread/73528
Identical problem, but received no response
Other Sources
O-1 Hussain
https://sayeedontech.wordpress.com/2014/06/26/mac-app-code-signing-frameworks/
Gives same advice as TN2206
O-2 FMod
https://qa.fmod.com/t/cfbundleidentifier-collision/17227
Suggests the most aggressive change. Remove the signature on all 3 components, modify the info.plists with a new product id, resign with my certificate. That does, in fact, allow validation, but the bundles do not load resulting in a crash in the framework during the first call into it.