I am using the iOS8 Dynamic Frameworks that I build myself and link within my iOS app. It was working fine in the simulator and on device, but when trying to archive a Release build for it, I keep getting this error:
Code Sign error: No matching provisioning profiles found: None of the valid provisioning profiles allowed the specified entitlements: com.apple.developer.ubiquity-kvstore-identifier, keychain-access-groups, com.apple.developer.icloud-container-identifiers, com.apple.developer.icloud-services, com.apple.security.application-groups, com.apple.developer.ubiquity-container-identifiers. CodeSign error: code signing is required for product type 'Framework' in SDK 'iOS 8.3'
Within the app target -> Build Phases -> Embed Frameworks -> the framework is linked there, and "Code Sign on Copy" checkbox is checked.
Within the framework target -> Build Settings -> I have set Provisioning Profile to "Automatic", and for Code Sign Identity, under Release, I am using "iOS Distribution"
I have 3 different app targets that need to build off this Framework.
I'm confused:
does the framework need it's own AppID registered in the Developer Center?
does the framework need it's own Provisioning Profile?
can the framework use the same Entitlements file from the iOS app target?
Thanks.
I had the same problem but fixed it by:
Setting the team to None in the General tab of the target settings.
Changing this value seems to also reset the code signing params in the build settings, to 'iOS Developer' for both debug and release. If it doesn't then change these params yourself.
I can now build my framework with no errors.
The newly built framework can be checked for signing by entering codesign --display --verbose=4 FRAMEWORK_PATH into the terminal.
This tool should return: code object is not signed at all