How to add IOS Entitlements

IOS packaging of unreal engine in mac.
The Unreal Engine version is 5.3.2-Release, and I want to log in to Apple as Entitlements, but even if I add it in xcode, entitements are not added, and even if I add the projectname.entitements file to config->DefaultEngine.ini, the Apple login function is not added. Does anyone know how to solve this problem?

Hello there @em_bro!

Since you are working on 5.3, the Xcode workflow was updated for that version and above. An extract from the documentation states the following:

The updated Xcode workflow is available for UE 5.3 and newer, and is enabled by default for new projects. If you need to enable it manually, however, follow these steps:

  1. Open your engine’s install directory, open Engine/Config/BaseEngine.ini, and make sure that you set the following config variable:

Engine/Config/BaseEngine.ini

 [/Script/MacTargetPlatform.XcodeProjectSettings]
 bUseModernXcode=true
  1. Regenerate your Xcode project files for both the engine and your project. If you are using a source build of UE, run the GenerateProjectFiles.command script in your engine install directory to regenerate the project files for UE’s source code. You should see three Xcode workspace files in your project’s directory:
  • UE5 (Mac).xcworkspace
  • UE5 (TVOS).xcworkspace
  • UE5 (IOS).xcworkspace

The new Xcode setup is now ready to use.

For further details, please check the full document here:

1 Like

Currently,

[/Script/MacTargetPlatform.XcodeProjectSettings]  
bUseModernXcode=true  

is already set.

The generated .xcworkspace files are split into three separate files:

  • UE5 (Mac).xcworkspace
  • UE5 (TVOS).xcworkspace
  • UE5 (IOS).xcworkspace

Here’s the issue in detail:
When I open MyProject (Mac).xcworkspace and try to add Sign in with Apple in the Signing & Capabilities tab using the + Capability button, an error occurs.
So instead, I add Sign in with Apple in the MyProject (IOS).xcworkspace.
However, even after packaging the app, the Sign in with Apple entitlement is not included inside the app.

To fix this, I added the following to Config/DefaultEngine.ini:

[/Script/IOSRuntimeSettings.IOSRuntimeSettings]  
AdditionalEntitlements=../../Build/IOS/ProjectName.entitlements  

And I placed the ProjectName.entitlements file in the Build/IOS folder.

However, the Sign in with Apple capability still doesn’t appear in the packaged app.

Could you please help me figure out how to properly add and apply the entitlements?