我的要求是在 linux 系统中使用 firefox 运行自定义协议处理程序。
通过在 /usr/share/applications 中创建 myapp.desktop 文件,我已经在 Ubuntu 中成功添加了协议处理程序。内容是这样的。
[Desktop Entry]
Name=myapp
Comment= My Custom protocol handler
Exec=/path/to/my/application %U
Icon=myicon
Terminal=0
Type=Application
X-MultipleArgs=True
MimeType=x-scheme-handler/myapp
Encoding=UTF-8
Categories=Network;Application;
之后我运行更新桌面数据库。一切就绪,我可以在 Ubuntu 的 firefox 浏览器或 Fedora 中输入 myapp://,然后 myapp 被调用。
虽然相同的过程在 Centos 或 Opensuse 中不起作用。我在 centos 和 opensuse 中尝试了以下内容,但没有奏效。
gconftool-2 -t string -s /desktop/gnome/url-handlers/myapp/command "/path/to/my/app %U"
gconftool-2 -s /desktop/gnome/url-handlers/myapp/needs_terminal false -t bool
gconftool-2 -t bool -s /desktop/gnome/url-handlers/myapp/enabled true
请帮助使协议处理程序在 centos 和 opensuse 中工作。我正在使用 centos-6.2 和 opensuse 11.2
提前致谢。