When trying to build an Expo app with Family Controls enabled, the build process fails with the following Xcode error:
Provisioning profile "*[expo] com.****.focusid AdHoc ..." doesn't include the com.apple.developer.family-controls.development entitlement. Profile qualification is using entitlement definitions that may be out of date. Connect to network to update.
Despite configuring entitlements in app.config.js as follows:
The entitlement is active in the Apple Developer Portal for the app identifier, as shown in the attached image.
Family Controls have been approved by Apple.
All certificates and provisioning profiles have been deleted and regenerated, but the error persists.
✔ Check package.json for common issues
✔ Check Expo config for common issues
✔ Check native tooling versions
✔ Check if the project meets version requirements for submission to app stores
✔ Check dependencies for packages that should not be installed directly
✔ Check for app config fields that may not be synced in a non-CNG project
✔ Check for issues with Metro config
✔ Check npm/ yarn versions
✔ Check Expo config (app.json/ app.config.js) schema
✔ Check for common project setup issues
✔ Check that packages match versions required by installed Expo SDK
✔ Check for legacy global CLI installed locally
✔ Check that native modules do not use incompatible support packages
✖ Check that native modules use compatible support package versions for installed Expo SDK
Detailed check results:
Expected package @expo/config-plugins@~8.0.0
Found invalid:
@expo/config-plugins@7.9.1
(for more info, run: npm why @expo/config-plugins)
Advice: Upgrade dependencies that are using the invalid package versions.
Used by react-native-ble
Error output
No response
Reproducible demo or steps to reproduce from a blank project
Create a new Expo project with expo init.
Add the following configuration to app.json or app.config.js:
Build/Submit details page URL
https://expo.dev/accounts/focused/projects/focused/builds/599cae7a-ced3-4369-9391-0c7b21b624d2
Summary
When trying to build an Expo app with Family Controls enabled, the build process fails with the following Xcode error:
Despite configuring entitlements in app.config.js as follows:
The entitlement is active in the Apple Developer Portal for the app identifier, as shown in the attached image. Family Controls have been approved by Apple. All certificates and provisioning profiles have been deleted and regenerated, but the error persists.
Managed or bare?
Managed
Environment
expo-env-info 1.2.1 environment info: System: OS: Linux 6.9 Pop!_OS 22.04 LTS Shell: 5.1.16 - /bin/bash Binaries: Node: 20.12.2 - /run/user/1000/fnm_multishells/5962_1731793463600/bin/node Yarn: 1.22.22 - /run/user/1000/fnm_multishells/5962_1731793463600/bin/yarn npm: 10.5.0 - /run/user/1000/fnm_multishells/5962_1731793463600/bin/npm Watchman: 4.9.0 - /usr/bin/watchman npmPackages: @expo/metro-config: ~0.18.11 => 0.18.11 @expo/webpack-config: ^19.0.0 => 19.0.1 expo: ~51.0.38 => 51.0.38 expo-router: ~3.5.23 => 3.5.23 react: 18.2.0 => 18.2.0 react-dom: 18.2.0 => 18.2.0 react-native: 0.74.5 => 0.74.5 react-native-web: ~0.19.6 => 0.19.10 npmGlobalPackages: eas-cli: 13.3.0 Expo Workflow: managed
✔ Check package.json for common issues ✔ Check Expo config for common issues ✔ Check native tooling versions ✔ Check if the project meets version requirements for submission to app stores ✔ Check dependencies for packages that should not be installed directly ✔ Check for app config fields that may not be synced in a non-CNG project ✔ Check for issues with Metro config ✔ Check npm/ yarn versions ✔ Check Expo config (app.json/ app.config.js) schema ✔ Check for common project setup issues ✔ Check that packages match versions required by installed Expo SDK ✔ Check for legacy global CLI installed locally ✔ Check that native modules do not use incompatible support packages ✖ Check that native modules use compatible support package versions for installed Expo SDK
Detailed check results:
Expected package @expo/config-plugins@~8.0.0 Found invalid: @expo/config-plugins@7.9.1 (for more info, run: npm why @expo/config-plugins) Advice: Upgrade dependencies that are using the invalid package versions.
Used by react-native-ble
Error output
No response
Reproducible demo or steps to reproduce from a blank project
Create a new Expo project with expo init.
Add the following configuration to app.json or app.config.js:
Submit the Family Controls request via the Apple Developer Portal and get it approved.
Ensure the Family Controls entitlement is visible under your app identifier and active in the Apple Developer Portal.
Generate provisioning profiles with the entitlement and link them to the app.
Use eas build --platform ios to build the app.
Observe the build failure with the following error in Xcode logs:
Please let me know if you'd like any additional information!