2012-08-15 2 views
1

필자의 요구 사항은 리눅스 시스템에서 firefox를 사용하여 맞춤형 프로토콜 핸들러를 실행하는 것이다.centos, opensuse의 x-scheme-handler로 프로토콜 핸들러 설정하기

/usr/share/applications에 myapp.desktop 파일을 작성하여 우분투에서 프로토콜 처리기를 성공적으로 추가했습니다. 내용은 이와 같습니다.

[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를 실행합니다. 모든 설정과 나는 우분투의 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

미리 감사드립니다.

+0

내가 실행 한 첫 번째 명령에 오타가 있습니다. 그것은 이었습니다. gconftool-2 -t 문자열 -s/desktop/gnome/url-handler/myapp/명령 "/ path/to/my/app % s" –

답변

2

나는 이유를 알아 냈다. gconftool을 실행하면 url 핸들러가 추가됩니다. 루트 권한을 갖는 rpm 게시 스크립트의 일부로이 명령을 실행했습니다. 따라서 URL 처리기가 사용자에게 등록되지 않았습니다. 일단 수동으로 사용자로 실행하면 브라우저에 myapp : //를 입력하면 firefox가 myapp를 호출 할 수 있습니다.