如何在 iPhone 应用程序中本地化捆绑显示名称?
Posted
技术标签:
【中文标题】如何在 iPhone 应用程序中本地化捆绑显示名称?【英文标题】:How to localize bundle display name in iPhone app? 【发布时间】:2010-05-20 08:10:37 【问题描述】:如何本地化 iPhone 应用程序的捆绑显示名称? iPhone 主屏幕应用图标下显示的名称。 我希望有一个可以多语言显示的二进制包。
【问题讨论】:
目前官方文档中描述的流程:developer.apple.com/library/prerelease/ios/documentation/MacOSX/… 【参考方案1】:这里有一些说明:
创建一个名为InfoPlist.strings
的新空文件
打开导航器 (cmd-opt-0
) 并选择第一个窗格
点击加号进行本地化
Xcode (4.3) 有点好笑并取消选择您的文件。将其放入本地化文件夹(在项目的原始文件夹中可能称为 en.lproj
。在项目导航器中重新选择它。
您的文件现在(可能)在本地化列表中有英文。点击加号按钮添加另一种语言。
通常最好将所有要本地化的项目放在同一个文件夹中,这样当它们本地化时,Xcode 不会在整个项目中创建一大堆 en.lproj
和 ja.lproj
文件。称之为“本地化资源”。
您现在可以通过将本地化名称添加到每个文件中来本地化应用名称,如下所示(对于法语本地化文件):
"CFBundleDisplayName" = "Bonjour";
【讨论】:
【参考方案2】:好的,尽管这是一个相当老的问题,但它在我的谷歌搜索中出现了很高的主题。因此,我认为更新答案可能是有意义的:
在 Xcode 4.X 中,按照以下步骤本地化您的包名称:
-
文件->新建->文件...
选择资源->字符串文件
在文件名中键入 InfoPlist.strings 并将其保存在正确的位置。 即使您的 plist 名为 App-Info.plist - 文件名始终是 InfoPlist.strings!
现在文件应该是打开的(否则,选择它)。在左侧抽屉中,选择“本地化”
并确认新创建的文件已移动到英文文件夹后,检查您想要的其他语言。要在此处显示一种语言,需要将其列为您的本地化语言
将这两行添加到 InfoPlist.strings 中以获得正确的语言:
"CFBundleDisplayName" = "名称";
"CFBundleName" = "名称";
在您的 App-Info.plist 中添加一个新行“本地化原生开发区域” - 此设置为默认开发区域“仅”6 个简单步骤后,您就可以设置您的本地化应用名称!!11!1111
【讨论】:
【参考方案3】:Xcode 9.4.1
创建一个名为 InfoPlist.string 的新文件(字符串文件)
单击一次新文件后,在右侧的本地化菜单中将您的语言添加到该文件中。展开 InfoPlist.sting 文件并在所有文件中添加 CFBundleDisplayName 与您的翻译:
"CFBundleDisplayName" = "My i18n App Name";
在 Info.plist 中添加两个新值(或确保它们存在):
Bundle display name = $(PRODUCT_NAME)
Application has localized display name = YES
【讨论】:
【参考方案4】:将 InfoPlist.strings 添加到您的项目并对其进行本地化。用不同的语言写:
"CFBundleDisplayName" = "App Name";
【讨论】:
【参考方案5】:在 Info.plist 中为以下键提供本地化(翻译)名称:
Bundle Display Name
Bundle Name
这将在 iPhone 桌面的图标下显示您的应用程序翻译名称
【讨论】:
【参考方案6】:Xcode 13 2022 更新
首先在项目信息中添加您需要的任何本地化
然后类似于所有较旧的答案,
-
创建一个名为 InfoPlist 的新字符串文件
勾选您在右侧栏中添加的所有本地化
使用面包屑导航更新每个区域设置的 CFBundleDisplayName 属性
【讨论】:
我不明白第 1 步:create a new strings file called InfoPlist
我们在哪里执行此操作?我们在哪里创建它以及在哪个文件夹中?以上是关于如何在 iPhone 应用程序中本地化捆绑显示名称?的主要内容,如果未能解决你的问题,请参考以下文章
如何捆绑名称与捆绑显示名称与 AppStoreConnect 应用程序名称