Я создаю упакованное приложение Chrome (это необходимо, поскольку я хочу получить доступ к chrome.socket). У меня есть веб-сайт, с которого я хотел бы вызвать свое приложение (если оно установлено или попросить пользователя установить его), щелкнув ссылку. Это возможно ? Не удалось найти простой способ для этого рабочего процесса.
Активировать приложение Chrome с веб-страницы?
Ответы (2)
url_handlers
может быть лучшим способом добиться этого.
Вы также можете использовать свойство манифеста externally_connectable, чтобы объявить, что ваш веб-сайт может подключаться к вашему приложению, затем вызвать chrome.runtime.sendMessage
или chrome.runtime.connect
со своей веб-страницы и обработать его в обработчике chrome.runtime.onMessage
в приложении.
Какой из них лучше подходит, зависит от ваших потребностей. url_handlers
— это более простой способ, но он навсегда присвоит URL-адрес вашей ссылки вашему приложению, поэтому вы не сможете использовать его ни для чего другого, если приложение установлено. externally_connectable
— более сложный способ, но он обеспечивает гораздо более сложную двустороннюю связь между вашим веб-сайтом и приложением.
Вы даже можете использовать комбинацию двух подходов, если вам нужно: запустить приложение с помощью функции url_handlers
, а затем установить канал связи с веб-сайтом, как только приложение будет запущено и запущено.
Приложения теперь могут (начиная с Chrome 31, насколько я знаю) зарегистрируйтесь для обработки URL-адресов, добавив url_handlers в свой манифест и обнаружив URL-адрес, вызывающий приложение. для запуска в событии chrome.app.runtime.onLaunched. Если приложение не запускается, ваш размещенный веб-сайт будет загружен и может представить встроенную установку с chrome.webstore.install.