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

macOS下如何指定URI Scheme启动的目标应用路径

指定URI Scheme启动的特定应用副本

针对你开发机器上多份应用副本导致URI启动异常的问题,可通过以下方法强制指定启动目标版本:

1. 手动注册目标应用到Launch Services

Launch Services负责管理macOS的URI关联,直接注册你需要的DerivedData下的应用副本即可覆盖旧关联:

  • 找到当前构建应用的完整路径,比如:~/Library/Developer/Xcode/DerivedData/YourApp-abc123/Build/Products/Debug/YourApp.app
  • 在终端执行以下命令(替换为你的应用路径):
    /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -f /完整路径/YourApp.app
    
    -f参数会强制覆盖该应用的现有注册信息,让系统优先选择这个副本处理URI请求。

2. Xcode构建后自动注册(可选)

如果不想每次手动执行命令,可在Xcode中添加构建后脚本,自动注册当前构建的应用:

  • 打开Xcode项目,进入「Targets」→ 你的应用目标 → 「Build Phases」
  • 点击「+」→ 「New Run Script Phase」
  • 在脚本框中输入:
    APP_PATH="${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app"
    /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -f "${APP_PATH}"
    
    这样每次构建完成后,系统会自动注册最新的DerivedData副本,避免URI启动旧版本。

3. 临时测试指定应用(快速验证)

如果只是临时测试特定副本,可直接用终端命令通过URI启动目标应用:

open -a "/完整路径/YourApp.app" "your-scheme://your-path"

这种方式跳过系统默认关联,直接指定应用打开URI。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 04:45:57