EAS Build failed on iOS : Associated Domains capability

Hi,

Info :

  • Expo SDK 44
  • Eas cli : eas-cli/0.42.4 darwin-arm64 node-v17.2.0 (I updated the version with yarn and npm but still on lower version…).

I’m having trouble to make a development build for iOS.
Fastlane gives me this message :

❌  error: Provisioning profile "*[expo] fr.mypackagename AdHoc 1644684272709" doesn't support the Associated Domains capability. (in target 'packagename from project 'p')
`error: Provisioning profile "*[expo] fr.mypackage AdHoc 1644684272709" doesn't include the com.apple.developer.associated-domains entitlement. (in target 'XXX' from project 'XXX')`



What I did :

  • Delete old provisioning profiles in App Store Connect
  • Enable Associated Domains in App store
  • Also tried to delete provisioning profiles through eas credentials

Every time I run “eas build --profile development --platform ios”, when I go back to identifiers ==> “my app id” in app store connect I can see that “associated domain” have been disabled by Expo when building.

But when I run “expo config --type introspect” to see the entitlements of my project, here what I get :

  entitlements: {
          'aps-environment': 'development',
          'com.apple.developer.applesignin': [
            'Default'
          ],
          'com.apple.developer.associated-domains': [
            'applinks:mywebsite.fr'
          ]
        },

So associated domain should be enable by eas build but It’s not.

Edit : When I build with “EXPO_NO_CAPABILITY_SYNC=1” it works well, but why do I have to do this ?

I would appreciate some help,
Thanks :slight_smile:

Can you share the logs when running with export EXPO_DEBUG=1, this should provide a lot more insight into what’s happening.

Thank you for your answer but I’m not sure to understand where I need to use this and where to find the report:

export EXPO_DEBUG=1

Could you elaborate please ?

Late but maybe will help someone.

User’s can accompany expo commands with EXPO_DEBUG in the command line and view additional logs. Im not sure about the export but one could just copy and paste the logs.

I still have the issue.

Here are the export log of “eas build --profile development --platform ios” :slight_smile:

Current remote capabilities:
[
  {
    "context": {
      "providerId": 123195...,
      "teamId": "MyteamId"
    },
    "id": "U78L9459DU_GAME_CENTER",
    "attributes": {
      "ownerType": "BUNDLE",
      "settings": [
        {
          "key": "GAME_CENTER_SETTING",
          "options": [
            {
              "key": "GAME_CENTER_IOS",
              "properties": [
                null
              ]
            }
          ]
        }
      ],
      "editable": true,
      "inputs": null,
      "enabled": true,
      "responseId": "77eb74ad-7c24-48de-9d35-1fabb4c5afd9"
    }
  },
  {
    "context": {
      "providerId": 123195...,
      "teamId": "MyteamId"
    },
    "id": "U78L9459DG_IN_APP_PURCHASE",
    "attributes": {
      "ownerType": "BUNDLE",
      "settings": null,
      "editable": true,
      "inputs": null,
      "enabled": true,
      "responseId": "77eb74ad-7c24-48de-9d35-1fabb4c5afd9"
    }
  },
  {
    "context": {
      "providerId": 123195...,
      "teamId": "MyteamId"
    },
    "id": "U78L9459DG_PUSH_NOTIFICATIONS",
    "attributes": {
      "ownerType": "BUNDLE",
      "settings": null,
      "editable": true,
      "inputs": null,
      "enabled": true,
      "responseId": "77eb74ad-7c24-48de-9d35-1fabb4c5afd9"
    }
  },
  {
    "context": {
      "providerId": 123195...,
      "teamId": "MyteamId"
    },
    "id": "U78L9459DG_APPLE_ID_AUTH",
    "attributes": {
      "ownerType": "BUNDLE",
      "settings": [
        {
          "key": "APPLE_ID_AUTH_APP_CONSENT",
          "options": [
            {
              "key": "PRIMARY_APP_CONSENT",
              "properties": [
                null
              ]
            }
          ]
        }
      ],
      "editable": true,
      "inputs": null,
      "enabled": true,
      "responseId": "77eb74ad-7c24-48de-9d35-1fabb4c5afd9"
    }
  },
  {
    "context": {
      "providerId": 123195...,
      "teamId": "MyteamId"
    },
    "id": "U78L9459DG_MDM_MANAGED_ASSOCIATED_DOMAINS",
    "attributes": {
      "ownerType": "BUNDLE",
      "settings": null,
      "editable": true,
      "inputs": null,
      "enabled": true,
      "responseId": "77eb74ad-7c24-48de-9d35-1fabb4c5afd9"
    }
  }
]

Current local entitlements:
{
  "aps-environment": "development",
  "com.apple.developer.applesignin": [
    "Default"
  ],
  "com.apple.developer.associated-domains": [
    "applinks:packagename.fr"
  ]
}
Skipping existing capability: aps-environment (Push Notifications)
Remaining to remove:  [
  'U78L9459DG_GAME_CENTER',
  'U78L9459DG_IN_APP_PURCHASE',
  'U78L9459DG_APPLE_ID_AUTH',
  'U78L9459DG_MDM_MANAGED_ASSOCIATED_DOMAINS'
]
Skipping existing capability: com.apple.developer.associated-domains (Associated Domains)
Remaining to remove:  [
  'U78L9459DG_GAME_CENTER',
  'U78L9459DG_IN_APP_PURCHASE',
  'U78L9459DG_APPLE_ID_AUTH'
]
Existing to disable:  [
  'U78L9459DG_GAME_CENTER',
  'U78L9459DG_IN_APP_PURCHASE',
  'U78L9459DG_APPLE_ID_AUTH'
]

Sorry for the late reply, it looks like EAS is disabling the “MDM Managed Associated Domains” which is not the same as “Associated Domains”.

It looks like this was a very specific bug that only occurred when MDM_MANAGED_ASSOCIATED_DOMAINS and ASSOCIATED_DOMAINS were used together, I opened a PR to fix this.

I’m very sorry for any inconvenience or frustration this may have caused.