2012-08-15 4 views
1

Мое требование - запускать собственный обработчик протокола с помощью firefox в системах linux.установка обработчика протокола x-schem-handler в centos, opensuse

Я успешно добавил обработчик протокола в Ubuntu, создав файл myapp.desktop в/usr/share/applications. Содержимое похоже на это.

[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; 

После этого я запускаю базу данных update-desktop-database. Все установили, и я смог ввести myapp: // в браузере Firefox Ubuntu или в Fedora, и 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

Заранее спасибо.

+0

есть опечатка в первой команде, которую я побежал. Это было gconftool-2 -t string -s/desktop/gnome/url-handlers/myapp/command "/ path/to/my/app% s" –

ответ

2

Я понял причину. Запуск gconftool добавляет обработчик URL. Я выполнял эту команду как часть rpm post script, которая получает привилегии root. Следовательно, обработчик URL-адресов не регистрировался у пользователя. После запуска вручную в качестве пользователя firefox мог вызвать myapp при вводе myapp: // в браузере.

 Смежные вопросы

  • Нет связанных вопросов^_^