首页 文章

在macOS上打包时,自定义二进制文件以低DPI运行

提问于
浏览
0

我创建了一个具有高DPI支持的SDL2应用程序,并在手动运行已编译的二进制文件时正确显示 .

我已经用里面编译的二进制文件创建了一个 .app 结构( Info.plistContents/... 等...) . 应用程序本身启动并运行正常,问题是尽管向我的 Info.plist 添加了 NSHighResolutionCapable ,但窗口显示的DPI较低,在启动没有应用程序结构的已编译二进制文件时对比DPI . Get Info 菜单显示 Open in Low Resolution 选项为勾选并显示为灰色,我没有触及此选项 .

除非需要进一步的macOS应用程序包步骤,否则我可以确认二进制本身没有任何问题,因为它在手动运行时以高DPI运行 .

下面是我的 Info.plist 的片段,为了便于阅读,我编写了一大堆不相关的密钥 .

[...]
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.0.0</string>
<key>CFBundleVersion</key>
<string>1.0.0</string>
<key>NSHighResolutionCapable</key>
<true/>

我需要做哪些更改才能在高DPI下运行?

1 回答

  • 1

    我是TheNextman的正确方向,这是一个简单的问题,在添加高DPI密钥之前,缓存了之前版本的 Info.plist .

    为了更新缓存,我输入了命令 /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -f [path to .app] ,如here所述 .

相关问题