【发布时间】:2017-09-21 07:16:41
【问题描述】:
当我将带有空格的 Bundle 显示名称设为“A B C D”时,我将应用名称设为“ABCD”。这仅在 iOS 11 上发生。我尝试在 InfoPlist.string 中覆盖名称“CFBundleDisplayName”并使用特殊的 unicode 字符 \U00A0(无间断空格),但对我没有帮助。
【问题讨论】:
标签: ios objective-c cfbundledisplayname
当我将带有空格的 Bundle 显示名称设为“A B C D”时,我将应用名称设为“ABCD”。这仅在 iOS 11 上发生。我尝试在 InfoPlist.string 中覆盖名称“CFBundleDisplayName”并使用特殊的 unicode 字符 \U00A0(无间断空格),但对我没有帮助。
【问题讨论】:
标签: ios objective-c cfbundledisplayname
这是因为 Apple 在 iOS 11 中对较长的应用名称进行了截断更改。如果名称超过 12 个字符,空格将被删除。否则,它们仍然存在。
例如,Guide book app 将变为Guidebookapp,但Gui boo app 将保持为Gui boo app。
使用 unicode   (FIGURE SPACE) 有效,因为它不是 ascii 空间。我会犹豫是否将其用作解决方案,因为 Apple 会“修复”此错误并删除名称超过 12 个字符的应用程序的   似乎是合理的。
【讨论】:
我也有同样的问题。仅在 iOS 11 上。在较低的 iOS 版本上不会出现此问题。
我解决了这个问题:
  替换普通空间
就是这样。之后显示名称显示为空格。
  仅在输入 *.plist 时有效。 Xcode项目设置中无法插入Display name;
【讨论】:
  在 iOS 11 的“设置”应用和 iOS 9 和 10 的主屏幕中显示为双空格。
当我在InfoPlist.strings 中手动或使用脚本将空格替换为FIGURE SPACE 时,它对我有用。
【讨论】:
将 info.plist 编辑为源代码,但使用   而不是  。
  看起来像 2 个空格。
【讨论】: