捆绑显示名称缺少空格字符

时间:2017-09-21 07:16:42

标签: ios objective-c cfbundledisplayname

当我将包含空格的显示名称作为“A B C D”时,我将应用程序名称设为“ABCD”。这仅在iOS 11上发生。我在InfoPlist.string中尝试覆盖名称“CFBundleDisplayName”并使用特殊的unicode字符\ U00A0(不间断空格)并且它对我没有帮助。

6 个答案:

答案 0 :(得分:40)

我有同样的问题。仅适用于iOS 11.在较低的iOS版本中,此问题未出现。

我用以下方法解决了这个问题:

  1. 打开info.plist作为源代码(右键单击,打开为...)
  2. 查找CFBundleDisplayName
  3. 用unicode  
  4. 替换普通空间

    这就是全部。之后显示名称显示为空格。

    更新:

     仅在输入* .plist时有效。无法在Xcode项目设置中插入Display name;

答案 1 :(得分:32)

这是因为Apple在iOS 11中为截断更长的应用程序名称所做的更改。如果名称超过12个字符,则将删除空格。否则,它们仍然存在。

例如,Guide book app将变为Guidebookapp,但Gui boo app将保持为Gui boo app

使用unicode  FIGURE SPACE)可以正常工作,因为它不是ascii空间。我会犹豫是否将此作为一种解决方案,因为苹果公司会修复"此错误并删除名称超过12个字符的应用的 

https://forums.developer.apple.com/thread/77832

答案 2 :(得分:2)

将info.plist编辑为源代码,但使用location ^~ /phpRedisAdmin/((?:css|images|js)/.*)$ { alias /home/phpRedisAdmin/$1; } 代替  看起来像2个空格。

答案 3 :(得分:2)

在我的情况下,info.plist文件中缺少此值,所以我只添加了以下内容:

<key>CFBundleDisplayName</key>
<string>$(PRODUCT_NAME)</string>

should look like this

答案 4 :(得分:0)

当我用中的FIGURE SPACE InfoPlist.strings手动或用脚本替换空格时,它对我有用。

答案 5 :(得分:0)

在捆绑显示名称中提供更多空间 喜欢 abc def abcdef enter image description here