Context: I am building an iOS productivity app using EAS Build. The project has 4 targets: the main app and 3 extensions (ShieldAction, ShieldConfiguration, ActivityMonitorExtension).
The Issue: I have officially received approval from Apple for the Family Controls (Distribution) entitlement for my main Bundle ID. However, the build still fails during the Xcode phase.
The Errors: Xcode reports that the generated provisioning profiles do not include the com.apple.developer.family-controls entitlement. For example:
Provisioning profile "*[expo] com.*.** AdHoc 177247892...." doesn't support the Family Controls capability.
All 3 extensions are failing with the exact same error.
What I've done:
Confirmed approval from Apple for com.*.**.
Enabled Family Controls and App Groups on the Apple Developer Portal for all 4 Identifiers.
Cleared EAS local and remote cache using eas build --clear-cache.
Deleted existing profiles on both Expo.dev and Apple Portal to force regeneration.
The Question: Even with official approval, why does EAS continue to generate "empty" profiles for my Ad-Hoc development build? Do I need separate approval for each extension's Bundle ID, or is there a way to force EAS to sync these "Managed Capabilities" correctly?
With Family Controls, you must apply the entitlement to both your container app and your app extensions. Each of these has its own App ID. When you apply for distribution access, you do so for one speciifc App ID. AFAICT you were only granted distribution access for your main app’s App ID, and that’s why you’re having this problem.
ps One of my colleagues has a Family Controls Resources post that links to the relevant docs.
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"