The error message “Embedded binary is not signed with the same certificate as the parent app. Verify the embedded binary target’s code sign settings match the parent app’s.” occurs when the code signing settings of the embedded binary do not match the code signing settings of the parent app.
Code signing is a security measure in iOS and macOS applications to ensure that they are from a trusted source and have not been tampered with. Each binary file, including libraries or frameworks, needs to be signed with a provisioning profile, which contains the necessary certificate and provisioning information.
To resolve this issue, you should check and ensure that the code signing settings of the embedded binary match those of the parent app. Here are the steps to verify and adjust the code signing settings:
- Open the project in Xcode.
- Select the embedded binary target in the project navigator.
- Go to the “Build Settings” tab.
- Search for “Code Signing Identity”.
- Make sure the value for the code signing identity matches the value used by the parent app.
If the code signing identity does not match, you can set it to the same value as the parent app’s code signing identity, or a compatible one if necessary.
Here’s an example of how the code signing identity settings can be adjusted in Xcode:
-
Parent App:
- Code Signing Identity: iPhone Developer: John Doe (XXXXXXXXXX)
-
Embedded Binary:
- Code Signing Identity: iPhone Developer: John Doe (XXXXXXXXXX)
In the above example, both the parent app and embedded binary have the same code signing identity, ensuring that they are signed with the same certificate.