You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

OS Sonoma 14.1.1系统隐藏特定运行应用并规避强制退出界面与程序坞显示的技术问询

OS Sonoma 14.1.1系统隐藏特定运行应用并规避强制退出界面与程序坞显示的技术问询

Hey Joe, 我之前也被这个问题折腾过——旧版macOS改Info.plist的方法在Sonoma彻底失效了,要么改完应用直接崩,要么系统不让编辑签名过的plist文件。试了好几种方法后,总结了两个靠谱的路子,你可以参考:

方案一:修改应用属性并重签名(适合非App Store下载的应用)

这个方法本质还是利用LSUIElement属性,但得解决Sonoma的签名限制:

  • 右键目标应用,选择「显示包内容」,打开Contents/Info.plist
  • 找到或添加LSUIElement键,设置类型为Boolean,值改成YES
  • 这时候直接启动应用大概率会崩溃,因为签名验证失败,打开终端执行重新签名命令:
    codesign --remove-signature /Applications/你的应用名.app
    codesign --sign - /Applications/你的应用名.app
    
  • 启动应用后,它就不会出现在程序坞和Cmd+Opt+Esc的强制退出列表里了,只会在后台静默运行。不过要注意,重签名可能会导致应用丢失某些系统权限(比如通知、访问通讯录),需要手动重新授权。

方案二:终端后台启动(无需修改应用,适合所有应用)

如果不想动应用文件,用终端命令启动是更稳妥的选择:

  • 打开终端,输入以下命令(替换成你的应用路径和可执行文件名):
    nohup /Applications/你的应用名.app/Contents/MacOS/你的应用可执行文件名 &
    
  • 执行后直接关闭终端也没关系,应用会一直在后台跑,而且程序坞和强制退出界面里完全找不到它。要是应用有GUI窗口,窗口还是会正常显示,但Dock图标不会出现。
  • 要关闭的话,得先用终端查进程ID(PID):
    ps aux | grep 你的应用名
    
    然后用kill 查到的PID或者kill -9 查到的PID强制结束进程。

额外提醒

  • 要是你用的是App Store下载的官方签名应用,方案一基本行不通,只能用方案二或者找本地运行的后台管理工具来实现隐藏;
  • 不管用哪种方法,隐藏后的应用只能通过终端命令或者活动监视器(注意:活动监视器里还是能看到进程)来关闭,平时找不到入口,得记好操作步骤。

备注:内容来源于stack exchange,提问作者joe

火山引擎 最新活动