Errors building with manual provisioning profile and packages with PrivacyInfo

Errors building with manual provisioning profile and packages with PrivacyInfo.xcprivacy added. When I look at the changes in the package, the only difference is adding this .xcprivacy file. The error looks like this:

PLCrashReporter_CrashReporter does not support provisioning profiles, but provisioning profile *** has been manually specified. Set the provisioning profile value to "Automatic" in the build settings editor.

Using an Enterprise certificate with manually created provisioning profile, I don't have the option to choose automatic. And I can't change build settings for the swift packages.

Does anyone know how I can work around this issue?

Answered by gmoyer in 790532022

I learned that when you pass signingIdentity, and provisioningProfileUuid that Xcode (starting Xcode14) applies these to every target (even the target from SPM packages). I then changed the @Xcode@5 task to use exported plist option instead where I could set the method to enterprise and configure the profile and certificate for Release scheme.

This is the task I am using in Azure DevOps pipeline.

- task: Xcode@5
          inputs:
            actions: 'build'
            scheme: 'redacted'
            signingOption: 'manual'
            signingIdentity: '$(APPLE_CERTIFICATE_SIGNING_IDENTITY)'
            provisioningProfileUuid: '$(APPLE_PROV_PROFILE_UUID)'
            sdk: 'iphoneos'
            configuration: 'Release'
            xcWorkspacePath: '**/*.xcodeproj/project.xcworkspace'
            xcodeVersion: 'specifyPath'
            xcodeDeveloperDir: '/Applications/Xcode_15.4.app'
            packageApp: true
            archivePath: '$(Build.BinariesDirectory)/build/'
            exportPath: '$(Build.BinariesDirectory)/build/'
            useXCPretty: false`

Hello,

There isn't a workaround for this issue as frameworks do not need entitlements with its signature.

How are you integrating PLCrashReporter into your app? If you are building from source, I would suggest that you can try to link with the XCFramework that's prebuilt instead. You can verify that the XCFramework doesn't have any entitlements by using this command

codesign -d --entitlements - --xml <path to framework>
Accepted Answer

I learned that when you pass signingIdentity, and provisioningProfileUuid that Xcode (starting Xcode14) applies these to every target (even the target from SPM packages). I then changed the @Xcode@5 task to use exported plist option instead where I could set the method to enterprise and configure the profile and certificate for Release scheme.

Errors building with manual provisioning profile and packages with PrivacyInfo
 
 
Q