You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Jetpack Compose Desktop中隐藏macOS Dock图标?

解决Compose桌面应用在macOS Dock显示图标的问题

你的代码在Windows下表现正常,但macOS Dock仍会显示图标,这是因为macOS默认会将关联AWT组件(比如系统托盘)的应用标记为UI应用,进而在Dock展示。可以通过以下两种方式解决:

方法1:修改macOS应用的Info.plist配置

在Gradle的compose.desktop配置中,给macOS分发添加LSUIElement键并设为true,这是macOS原生控制应用是否在Dock显示的配置:

compose.desktop {
    application {
        mainClass = "MainKt" // 替换成你的主类路径
        nativeDistributions {
            macOS {
                infoPlist {
                    extraKeysRawXml = """
                        <key>LSUIElement</key>
                        <true/>
                    """.trimIndent()
                }
            }
        }
    }
}

方法2:添加JVM启动参数

通过指定JVM参数强制macOS将应用标记为非UI可见,可在Gradle中配置启动参数:

compose.desktop {
    application {
        mainClass = "MainKt"
        jvmArgs += "-Dapple.awt.UIElement=true"
    }
}

两种方法都能实现隐藏Dock图标效果,推荐优先用方法1,因为这是macOS官方的应用配置方式,兼容性更稳定。

内容的提问来源于stack exchange,提问作者neuos

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 19:50:10