Delphi For iOS开发指南(18):让Delphi XE4开发的iOS应用显示为中文名称

IOS 专栏收录该内容
18 篇文章 0 订阅

有好些个D友问我,如何让Delphi XE4开发的iOS应用显示为中文名称,

我在想,难道EMBXE4iOS开发上没有很好的支持中文么?

 

就像我们在XE4运行IOS应用程序的时候,

XE4会通过PAServer将编译好的APP传输到Mac下的这个目录里,

目录名是根据你Windows的用户名+Profile名来取的,这个目录名就不支持中文,

如果你的Windows用户名是中文,那么可能会出现Deploy失败的情况,也就是不能将编译好的APP传输到Mac下,所以你的Windows用户名应该要不包含中文的。

 

如果应用名称不能支持中文,那就完蛋了,一些用户一看,这个名称是英文的,以为是国外的软件,

应用里面的其他东西应该也都是英文的,自己肯定不会用,那就不去下载了。

 

有点罗嗦了,接下来我讲一下更改Delphi XE4开发的iOS应用显示为中文名称的方法,很简单,就一下子,看下图:

 

在工程管理视图右键,弹出的菜单中选中“Options”,在弹出的Options窗体的“Version Info”页中,右下角的列表中第三个项,“CFBundleDisplayName”就是我们要设置的项,这个值原先是$(ModuleName),表示是工程的名称,像我图中的这个工程,是“Project2”,那么它在iOS中显示的就是“Project2”,

我在这里把它改成了“Delphi老师”,然后运行一下,它就会在模拟器中显示成中文了,如下图:

 

 

 

顺带讲一下其他这些选项表示什么意思:

 

CFBundleName: CFBundleName指定了该束的简称。简称应该小于16个字符并且适合在菜单和“关于”中显示。通过把它加入到适当的.lproj子文件夹下的InfoPlist.strings文件中,该关键字可以被本地化。如果您本地化了该关键字,那您也应该提供一个CFBundleDisplayName关键字的本地化版本。

 

CFBundleDisplayName:CFBundleDisplayName关键字指定了一个字符串值来标识束的显示名称。Finder和其他用户界面组件会把它显示给用户。这个名称可以与文件系统中的束名不同。通过把关键字加入适当的.lproj子目录中的InfoPlist.strings文件,就可以实现该关键字的本地化。如果您需要本地化这个关键字,您还应该提供一个CFBundleName关键字的本地化版本。

 

CFBundleDevelopmentRegion: CFBundleDevelopmentRegion关键字指定了一个字符串值来标识束的地区。通常对应于作者的母语。如果不能找到用户首选的地区或语言的资源,系统最后会使用该值。

 

CFBundleIdentifier:CFBundleIdentifier关键字指定了束的一个唯一的标识字符串。该标识符采用了类似Java包的命名方式,例如com.apple.myapp。该束标识符可以在运行时定位束。预置系统使用这个字符串来唯一地标识每个应用程序。

 

CFBundleInfoDictionaryVersion:CFBundleInfoDictionaryVersion关键字指定了属性列表结构的当前版本号。该关键字的存在使得可以支持Info.plist格式将来的版本。在您建立一个束时,Project Builder会自动产生该关键字。

 

CFBundleVersion:CFBundleVersion关键字指定了一个字符串用来标识创建号。该关键字的值通常随每一次创建而改变,并且会被显示在Cocoa"关于"对话框中的扩号里。

为了指定一个发布版的束的版本信息,可以使用CFBundleShortVersionString关键字。参见“CFBundleShortVersionString”。

 

CFBundlePackageType:CFBundlePackageType关键字指定了束的类型,类似于Mac OS 9的文件类型代码。该关键字的值包含一个四个字母长的代码。应用程序的代码是‘APPL’;框架的代码是‘FMWK’;可装载束的代码是‘BND’。如果您需要,您也可以为可装载束选择其他特殊的类型代码。

 

CFBundleSignature:CFBundleSignature关键字指定了束的创建者,类似于Mac OS 9中的文件创建者代码。该关键字的值包含四字母长的代码,用来确定每一个束。

 

LSRequiresIPhoneOS:因此如果你的应用只能在iPhone环境下使用的话,请设置为True

 

CFBundleAllowMixedLocalizations:我们只需要在项目的 Info.plist文件中将这个键的值设置为 true。顾名思义,这个键允许混合形式的本地化。也就是说,当你设置了这个键之后,不管你的应用是否支持当前设备的语言环境,iOS系统都会尽可能都根据当前的语言进行本地化。

 

CFBundleExecutable:CFBundleExecutable标识了束的可执行主文件的名称。对于一个应用程序来说,就是该应用程序的可执行文件。对于一个可加载束,它是一个可以被束动态加载的二进制文件。对于一个框架,它是一个共享库。Project Builder会自动把该关键字加入到合适项目的Info.plist文件中。

对于框架,考虑到启动效率的原因,可执行文件名需要和框架名同名。该可执行文件名不应该包含可用于多种平台的扩展名。

注意,您必须在束的Info.plist文件中包含一个有效的CFBundleExecutable关键字。即使当用户重命名应用程序或束的目录时,Mac OS X也可以使用这个关键字来定位可执行文件和共享库。

 

UIDeviceFamily:支持的设备

 

CFBundleResourceSpecification:未知。。。。

 

 

 

 

 

 

XCode中开发iOS应用程序的时候也需要设置中文显示名称,是在工程的info.plist文件中进行设置的,

 

 

  • 0
    点赞
  • 1
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值