When creating IOS package with RemoteBuild, bCreateStubIPA is set to True by the following code.

public bool Build(TargetDescriptor TargetDesc, FileReference RemoteLogFile, bool bSkipPreBuildTargets)
// Handle any per-platform setup that is required
if(TargetDesc.Platform == UnrealTargetPlatform.IOS || TargetDesc.Platform == UnrealTargetPlatform.TVOS)
    // Always generate a .stub

So, CopyLocalizationsResources is not executed and BundleDisplayName is not localized.

public bool PrepForUATPackageOrDeploy(UnrealTargetConfiguration Config, FileReference? ProjectFile, string InProjectName, string InProjectDirectory, string InExecutablePath, string InEngineDir, bool bForDistribution, string CookFlavor, bool bIsDataDeploy, bool bCreateStubIPA, List<string> UPLScripts, string? BundleID, bool bBuildAsFramework)
    if (!bCreateStubIPA)
        CopyLocalizationsResources(InEngineDir, AppDirectory, BuildDirectory, IntermediateDirectory, Logger);
Steps to Reproduce

Try to localize CFBundleDisplayName by referring to the following document. Note that the IOS package must be created by remote build.

expect : localization success
result : localization failed

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-173286 in the post.

Login to Vote

ComponentUE - Platform - Mobile
Affects Versions5.05.1
Target Fix5.2
Fix Commit24801886
Main Commit24806501
Release Commit24802714
CreatedJan 4, 2023
ResolvedMar 27, 2023
UpdatedApr 29, 2023
View Jira Issue