【问题标题】:Is there a way to force Xcode to localize the app name in other languages?有没有办法强制 Xcode 将应用程序名称本地化为其他语言?
【发布时间】:2019-05-27 02:12:08
【问题描述】:

我正在创建一个为 10.12 编译的 macOS 应用程序。我的电脑是英文的,我的地区是葡萄牙。

该应用程序以 3 种语言创建:英语(开发语言,默认)、葡萄牙语巴西和葡萄牙语。

我想本地化应用名称。

我创建了一个InfoPlist.strings 文件,其中包含以下英文键:

"CFBundleDisplayName" = "My App";
"CFBundleName" = "My App";
"CFBundleExecutable" = "My App";

对于葡萄牙语的 br 和 pt

"CFBundleDisplayName" = "Minha App";
"CFBundleName" = "Minha App";
"CFBundleExecutable" = "Minha App";

我已将这些密钥添加到Info.plist

CFBundleDisplayName = $(PRODUCT_NAME)
CFBundleExecutable = $(PRODUCT_NAME)
CFBundleName = $(PRODUCT_NAME)
CFBundleIdentifier = $(PRODUCT_BUNDLE_IDENTIFIER)
LSHasLocalizedDisplayName = YES

在我的建筑设置里面

Product Name = My App

我转到 Product > Scheme > Edit Scheme > Run > Options 并将 Application Language 设置为英语并运行应用程序。

Xcode 会生成一个名称为 My App.app 的应用,它是正确且符合预期的。

我返回选项并将语言设置为葡萄牙语,Xcode 继续生成一个名为 My App.app 而不是 Minha App.app 的应用程序。

如何强制 Xcode 本地化 Finder 中显示的应用名称。

【问题讨论】:

    标签: xcode localization localizable.strings


    【解决方案1】:

    这不是本地化在 macOS 上的工作方式。您不会构建特定于葡萄牙语的应用程序版本。一个应用程序支持任何支持的语言的本地化。

    在后台,在文件系统中,您的应用程序包的目录将始终命名为“My App.app”,而不是“Minha App.app”。本地化只发生在 GUI 中的显示点。

    您不需要重新构建您的应用程序。

    所以,您的问题不在于 Xcode,而在于 Finder 和系统。要在 Finder 中查看其他本地化版本,您需要将帐户的语言设置切换为使用(其中一种)葡萄牙语。我不记得 Finder 是否已切换或您是否需要重新启动它(按住 Option/Alt 键,右键单击其 Dock 图标,然后单击重新启动;或者,注销并重新登录)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-17
      • 1970-01-01
      • 2015-10-13
      • 2017-09-02
      • 2018-12-27
      • 1970-01-01
      相关资源
      最近更新 更多