Description

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
    RemoteArguments.Add("-CreateStub"); 

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.
https://docs.unrealengine.com/4.27/en-US/SharingAndReleasing/Mobile/iOS/LocalizePlistInIOSProject/

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.

0
Login to Vote

Fixed
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