Регистрация обработчика протокола URL в нескольких платформы

Я желание создать JAVA-приложение, которое установлено на нескольких платформах (Windows, Mac OS, Linux) как часть этой установки, я хочу зарегистрировать обработчика протокола URL, так, чтобы мои загрузки приложения, когда на ссылки нажимают.

т.е. Я хочу что-то вроде этого: myprotocol://example.com

Есть ли какой-либо вид объединенного способа сделать это? Или своего рода платформа, которая экстраполирует различие через другую ОС.

17
задан Tomas Kubes 13 January 2016 в 15:57
поделиться

4 ответа

В качестве альтернативы, с помощью проекта JDIC можно ассоциировать файлы с конкретными приложениями.

Это может быть полезно для ваших предложений. Но вместо регистрации всего протокола ( что может быть как-то сложно ) вы можете зарегистрировать только тип файла.

Итак, ссылка вроде этой:

 <a href="http://example.com/file.dan">Dan File</a>

Может быть открыта с вашим приложением.

Вот пример кода для регистрации вашего приложения, чтобы открыть этот тип файла:

AssociationService serv = new AssociationService();
Association logassoc = new Association();

logassoc.addFileExtension("DAN"); 
logassoc.addAction( new Action("open", "C:\\WINDOWS\\JAVA.EXE -jar C:\\dan.jar %1"));

Вот полная статья: Понимание ассоциаций типа файлов JDIC

1
ответ дан 30 November 2019 в 14:06
поделиться

Я бы рекомендовал использовать Java Webstart вместо того, чтобы пытаться изобрести новую схему соединения. Она уже поддерживается любым браузером, в котором установлена Sun Java.

.
0
ответ дан 30 November 2019 в 14:06
поделиться

Вероятно, вам нужно будет сделать это в привязке к конкретной платформе. Вот как это сделать в OS X

http://www.cocoadev.com/index.pl?HowToRegisterURLHandler

0
ответ дан 30 November 2019 в 14:06
поделиться

В Firefox вы можете зарегистрировать свой собственный протокол .

В этой статье описывается подробнее о регистрации протокола. Возможно, вы сможете автоматизировать его оттуда.

0
ответ дан 30 November 2019 в 14:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: