我对 Mac 没有太多经验,因此将不胜感激。
首先尝试在这里问如何将自定义协议映射到Mac上的应用程序?
尝试在包安装程序的安装后脚本中运行duti添加我的自定义协议:
#!/bin/sh
##
## add_handlers.sh -- register UTI handlers for the MyApp
##
## Requires the duti tool
##
./duti -s MyApp myapp
该处理程序出现在 RCDefaultApp 首选项窗格中,但是当从我的其他应用程序调用时,它会在地址栏中使用该协议打开 Safari,询问“您是否要允许此页面打开“MyApp”?单击“允许”时会显示错误:
Safari 无法打开指定地址。Safari 无法打开“myapp://”,因为 macOS 无法识别以“myapp:”开头的 Internet 地址。
同样在尝试从终端打开时:
deploy@mini-mac-mini ~ % open myapp://
对于 URL myapp://,LSOpenURLsWithRole() 失败,出现错误 -10810。
尝试借助应用程序包中的 plist 文件添加协议时出现同样的问题。