如何在构建Mac应用时修改程序坞中的悬停显示名称?
如何在Linux构建Mac .app包时自定义程序坞悬停显示名称
完全可以通过Info.plist文件实现这个需求,这正是Mac应用配置显示名称的标准方式,而且完美支持带空格的名称,不用修改可执行文件名。
核心配置:CFBundleDisplayName键
在你的.app包的Contents/Info.plist文件中,添加或修改CFBundleDisplayName键,就能指定程序坞悬停、Launchpad等位置显示的友好名称。
下面是一个完整的Info.plist示例(XML格式,适合在Linux上编辑):
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <!-- 基础必填配置 --> <key>CFBundleIdentifier</key> <string>com.yourdomain.myapp</string> <!-- 你的应用唯一标识 --> <key>CFBundleExecutable</key> <string>myapp</string> <!-- 对应Contents/MacOS下的可执行文件名 --> <key>CFBundleName</key> <string>myapp</string> <!-- 应用内部名称,和可执行文件名一致即可 --> <!-- 重点:设置显示名称 --> <key>CFBundleDisplayName</key> <string>My App</string> <!-- 这里填你想要的带空格的名称 --> </dict> </plist>
构建.app包的目录结构
在Linux上构建时,要确保.app包的结构符合Mac的规范:
myapp.app/ └── Contents/ ├── Info.plist # 刚才编辑的配置文件 ├── MacOS/ │ └── myapp # 你的可执行文件 └── Resources/ # 可选,存放图标(.icns)、资源文件等
关键说明
CFBundleDisplayName是专门控制"显示名称"的键,Mac系统会优先用这个值在程序坞、Launchpad、菜单栏等位置展示,完全支持空格和特殊字符。CFBundleExecutable必须和你MacOS目录下的可执行文件名完全一致,这个是应用的执行入口,不用修改它。- 确保
Info.plist用UTF-8编码保存,否则Mac系统可能无法正确解析配置。
把构建好的.app包传到Mac上测试,悬停程序坞图标时就会显示你设置的"My App"了,完全不需要在Mac本地修改任何内容。
内容的提问来源于stack exchange,提问作者ffConundrums
相关产品推荐
相关产品推荐

