使用电子原子的OSX桌面应用程序的自定义URL协议

问题描述 投票:2回答:2

我是电子新的桌面应用程序。然而,我使用this source code构建了一个桌面应用程序,只是更改了我的网站的链接。现在我有一个功能桌面应用程序的mac。

但我想使用链接说appName:// and-some-link-follow打开我的应用程序

每当我点击appName时,我如何实现自定义URL架构来打开桌面应用程序:// ....

例如:我想做Slack桌面应用程序之类的东西,它通过单击slack://和-a-link打开

请帮忙。被困在这里2天。提前致谢。

macos protocols desktop-application electron custom-url
2个回答
2
投票

今天我遇到了类似的事情,经过一些研究,我找到了this useful tutorial如何做到这一点。它彻底解释了一切,我认为它可能对面临同样问题的其他人有用。这是亮点:

const electron = require('electron')
const protocol = electron.protocol
// handles links `todo2://<something>`
const PROTOCOL_PREFIX = 'todo2'
function createWindow () {
  mainWindow = new BrowserWindow({width: 1000, height: 800})
  protocol.registerHttpProtocol(PROTOCOL_PREFIX, (req, cb) => {
    const fullUrl = formFullTodoUrl(req.url)
    devToolsLog('full url to open ' + fullUrl)
    mainWindow.loadURL(fullUrl)
  })

}

还有一个关于如何在我链接的帖子结束时为OSX和Windows构建的指南。

对于那些想要阅读更多内容的人来说,这里是official docs的链接。


0
投票

我找到了。

  1. 为您的应用做一个构建
  2. 右键单击 - >显示包内容
  3. 在info.plist中添加以下内容

Can't pase code. So in image

  1. 打开应用程序一次将customURL注册到系统中。

在终端输入/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -dump | egrep“(bindings。*:$)”|排序检查你的是否在列表中。

© www.soinside.com 2019 - 2024. All rights reserved.