Использование пользовательских электронных протоколов в разработке - PullRequest
0 голосов
/ 05 марта 2020

Я разрабатываю приложение Electron, для которого требуется собственный протокол. Я хотел бы иметь возможность проверить это в среде разработки с использованием электронного Cli. В настоящее время я регистрирую протокол с:

const protocolRegisterSuccess = app.setAsDefaultProtocolClient('my-protocol');

Затем я запускаю свое электронное приложение для разработки с electron main.bundle.js и открываю my-protocol://test в Chrome. Я ожидаю, что оно откроет мое текущее приложение для разработки или, по крайней мере, запустит другое, однако оно запускает новое электронное приложение, которое показывает экран электроники по умолчанию («Чтобы запустить локальное приложение, выполните эту команду ...»).

Я работаю на Ma c, и когда я смотрю на ~/Library/Preferences/com.apple.LaunchServices/com.apple.launchservices.secure.plist, я вижу, что протокол зарегистрирован, а идентификатор приложения установлен на com.github.electron. Похоже, что это идентификатор приложения электронного исполняемого файла, который запускается электронным CLI для локального запуска моего приложения (существует в ./node_modules/electron/dist/Electron.app/Contents/MacOS/Electron), и я считаю, что именно поэтому протокол не работает.

Есть ли способ заставить протокол работать локально? Могу ли я обновить идентификатор приложения (с помощью какого-либо параметра конфигурации или перестроив исполняемый файл)? Можно ли указать аргументы, передаваемые исполняемому файлу, запущенному на Ma c? Мне не нужно, чтобы поведение было таким же, как у полностью упакованного приложения, но я бы хотел иметь возможность протестировать базовые c пользовательские протоколы в процессе разработки.

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...