I’ve set my “Development Team ID” and have set the “Code-signing Identity” to “Developer ID Application” in the “Xcode (MacOSX)” exporter inside the Projucer. When I compile, I get the following error:
Note:MyProject - AUv3 AppExtension has conflicting provisioning settings. MyProject - AUv3 AppExtension is automatically signed for development, but a conflicting code signing identity Developer ID Application has been manually specified. Set the code signing identity value to “Mac Developer” in the build settings editor, or switch to manual signing in the project editor.
(similar errors for VST, AU, AAX targets as well)
in Xcode it looks like this:
It compiles fine if I uncheck “Automatically manage signing” and also if I remove “Developer ID Application” from the Projucer, so that the default of “Mac Developer” is used.
Note: after making a diff of the original project and the one with manual signing
ProvisioningStyle = Manual;
is set in the pbxproj - maybe the Projucer is missing a CheckBox for manual signing? It escapes me though, why this did work fine with the JUCE 4 Projucer.
I also noticed, that “DevelopmentTeam” gets changed to “DEVELOPMENT_TEAM” when re-saving in Xcode.
Note: I’m using Xcode 8.3.2 on macOS 10.12.5.
What am I doing wrong?
Best,
Ben
Update: Please help! This essentially breaks my build-pipeline.
Thanks, that’s an interesting idea. But it does sound like a workaround. Using Developer ID works fine with the JUCE 4 Projucer. @jules: is this a bug or expected behaviour? (Or am I just missing something obvious?)
We’ve had this issue as well. The solution is to be sure to use the correct developer id - this is sometimes different than the one that xcode seems to display - I’m not sure why.
A reliable way to obtain the correct developer id is the following. Open your project in xcode and change the signing settings to the one that you want to use to sign your app:
Build once to ensure that signing works as expected. Now close Xcode and open your project’s project.pbxproj in a text editor. project.pbxproj is inside your projects Xcode project package (so for the JUCE demo it’s located at JUCE/examples/Demo/Builds/iOS/JuceDemo.xcodeproj/project.pbxproj). Then search for DEVELOPMENT_TEAM =. This will be your developer id - make a note of it. For some reason this id does not match the one that Xcode shows.
You can now use the above id in the projucer and JUCE will correctly generate your xcode projects for signing with your developer id.
This seems like the issue to me, if I set the Code-Signing Identity and Development Team ID in the project settings in Projucer then save, I see the same error that others here have mentioned.
But if I edit the pbxproj file changing ProvisionStyle to Manual and re-save, everything works fine.
I’m still new to Mac development so maybe I’m missing something, but it seems like this setting should be Manual and not Automatic?
I’ve spent several hours to try to get a JUCE plugin to work correctly with application ID certificates. After trying all tricks described above, the only one that seems to work is to set the Mac Developer ID Application (from the key chain) and setting provisioning style to manual.
Perhaps the projucer can be updated as follows: if ‘Mac Developer’ is used as code signing identity, set the provisioning style to automatic (as it is now), while using ‘manual’ when a Mac Developer ID application is used?
This still seems to be an issue with Projucer 6. Could anyone from the JUCE team take a look at this? It’s merely a matter of setting “ProvisioningStyle” to “Manual” when a code-signing identity is specified in Projucer as far as I can understand?
I had the same issue, figured out i was setting the identity in the Release build section of projucer. Once i set it one level up at the Xcode exporter it worked fine.