我正在为Linux上的Google Chrome创建自定义协议处理程序。我的链接看起来是这样的:为什么Linux上的Chrome针对未知协议显示“外部协议请求”对话框?
<a href="myprotocol:someargument">Trigger my app with param</a>
我已经注意到,如果“myprotocol:”未注册(不安装我的应用程序),谷歌Chrome在Linux上显示“外部协议请求”对话框,并尝试使用XDG开:
而在其他操作系统,如Windows 10和OS X埃尔卡皮坦什么,如果协议未注册时显示。
我还证实,Firefox可以在Windows,OS X和Linux上一致地处理未知协议 - 不会显示任何内容。
Linux上的Chrome行为对用户来说是相当混乱的。
任何想法为什么Chrome在Linux上(我在Ubuntu 14.04上测试)与其他操作系统和Web浏览器的行为不同?