Запуск настольного приложения с веб-сайта
-
09-09-2019 - |
Вопрос
Возможно ли запустить приложение через браузер / URL?Какие есть варианты для этого?
Я знаю, как это сделать с IE и Windows (что обычно не работает).В идеале я бы хотел, чтобы это было независимо от браузера.
Наше приложение - RCP, поэтому теоретически Java Web Start мог бы работать, нам просто нужно было бы внести некоторые существенные изменения в то, как мы доставляем наше приложение пользователям, чего я хотел бы избежать.Код нашего веб-сервера в настоящее время полностью выполнен на Java, если это имеет значение.
Я в значительной степени отказался от этого, пока не нажал URL-адрес на сайте Apple, который, в свою очередь, запустил iTunes.
Как Apple это делает?
Решение
iTunes регистрирует себя в качестве обработчика протокола для пользовательских itms://
и itmss://
протоколы.Когда вы нажимаете URL-адрес с помощью этого протокола - в данном случае после шага косвенного обращения на веб-серверах Apple - iTunes запускается для его обработки, подобно тому, как ваш браузер запускается для обработки http://
URL-адреса или ваша почтовая программа запускается для обработки mailto:
URL-адреса.
Это не является "кроссплатформенным" как таковым, но оно работает на любой платформе, поскольку существуют обработчики URL-адресов, которые везде делают одно и то же.
Недостатком этого является то, что он работает только в том случае, если приложение уже установлено, поэтому вы можете захотеть создать заставку, которая инструктирует пользователей устанавливать приложение в случае необходимости.
Другие советы
Silverlight 3 и Adobe Air позволят вам запускать приложения вне браузера.
Если это не зависит от операционной системы, то вы не можете полагаться на доступность какой-либо конкретной программы.Какую программу вы все равно хотели бы запустить?