Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Xcode Error - Profile doesn't include the com.apple.developer.icloud-container-environment entitlement

We have enabled iCloud capability in our application and enabled below services,

  1. Key-value storage
  2. iCloud Documents

But while trying to export the build through the archive, it's throwing me the below error,

Profile doesn't include the com.apple.developer.icloud-container-environment entitlement.

I have tried to set the com.apple.developer.icloud-container-environment entitlement in Entitlements file also as Production or Development but it did not help me either.

Any clue how to resolve this error?

enter image description hereenter image description hereenter image description here

like image 200
Bappaditya Avatar asked Oct 31 '19 15:10

Bappaditya


5 Answers

For me, the trick was making sure it was capitalized: "Production" is different from "production" according to Apple.

As indicated:

https://developer.apple.com/documentation/bundleresources/entitlements/com_apple_developer_icloud-container-environment

like image 70
Enigma Studios Avatar answered Oct 19 '22 17:10

Enigma Studios


Here's how I fixed it:

  1. I created an iCloud container on the CloudKit dashboard (in the iCloud section of the Signing & Capabilities in Xcode).

  2. I assigned the newly created container to my app (Developer Website > Certificates, Identifiers & Profiles > Identifiers > my app ID > Capabilities > iCloud > Edit button) and saved the app ID configuration.

  3. Then I created a new App Store provisioning profile for this app ID and used it to manually sign the app when I uploaded it in Xcode.

like image 24
TimSim Avatar answered Oct 19 '22 15:10

TimSim


This can also be done by Automatically manage signing. Just select the team, add Capability ICloud. Mark Tick on Container Checkbox and you will get the container there. Reference screenshot attached.

enter image description here

like image 5
Arsal Avatar answered Oct 19 '22 15:10

Arsal


I followed this link. Look at the answer from @AppleStaff that says to click this link

Here is a screenshot of it filled out:

enter image description here

In the Description section you can add whatever you. At the bottom of theIdentifier section, it says

We recommend using a reverse-domain name style string (i.e., com.domainname.appname).

Fill it out like this-

Identifier: iCloud.com.yourCompanyName.yourAppName

Description: yourAppNameContainer (or whatever you want)

Press Continue when your finished.

Afterwards, go to Xcode > Blue icon in the upper left hand corner > Signing & Capabilities (in the Targets section) > iCloud (you should have already previously enabled iCloud) > click the small Reload Button (wait a few seconds) > tick the name that you choose above:

enter image description here

like image 3
Lance Samaria Avatar answered Oct 19 '22 16:10

Lance Samaria


Try the following steps, which might help you

  • Go to the apple dev portal
  • open Certificates, Identifiers & Profiles section
  • edit/create your existing provisioning profile manually
  • download it from the portal, name it uniquely so you can distinguish it from the Xcode generated, i.e. "MyNewProfile"
  • export the archive and assign MyProfile
like image 1
Neil Galiaskarov Avatar answered Oct 19 '22 15:10

Neil Galiaskarov