我使用 xdg 进行设置,这样我的自定义 URI 就会在我的自定义桌面应用程序中打开。控制台中一切似乎都正常。我使用和进行了xdg-open
测试gio open
:
$ xdg-open foobar:id=333
$ gio open foobar:id=444
两者都按预期运行我的脚本。
当我进入浏览器并单击具有相同 URI 的超链接时,首先会出现一个小对话框询问我是否允许该网站打开 xdg-open,我接受。
然后出现 xdg-desktop-portal 并说没有可用的应用程序。
我假设点击在软件中查找更多不会帮助我,而是会将我带到 Ubuntu 软件应用程序或类似程序。但如果我点击它,我会得到:
Firefox 和 Chromium 的行为相同。
但是,安装 Transmission 后,磁力链接可以正常工作。
gio 的详细信息:
$ gio mime x-scheme-handler/foobar
Default application for “x-scheme-handler/foobar”: foobar.desktop
No registered applications
No recommended applications
foobar.desktop的内容:
[Desktop Entry]
Version=1.0
Name=Foobar Test Handler
GenericName=Foobar
Comment=Just for testing
Icon=/home/jdoe/foobar/icon.png
Path=/home/jdoe/foobar/
Exec=python /home/jdoe/foobar/handler.py %u
Terminal=false
Type=Application
Categories=Utility
MimeType=x-scheme-handler/foobar;
我正在运行 Ubuntu 22.04.1 LTS。
答案1
使用命令更新你的 mime 处理程序数据库
update-desktop-database ~/.local/share/applications