在electron应用程序中实现延迟深度链接

在electron应用程序中实现延迟深度链接,electron,windows-installer,nsis,deep-linking,electron-builder,Electron,Windows Installer,Nsis,Deep Linking,Electron Builder,在我们的网页中,我们有一个文档列表和一个按钮,用于在electron应用程序中打开文档。此按钮实际上具有自定义协议href,其中文档ID作为参数传递 此electron应用程序只能在从浏览器启动时使用(使用自定义协议“my custom-protocol://document-id-here"). 根据传递的参数,我们决定在electron应用程序中打开哪个文档 如果用户试图直接打开应用程序(不使用浏览器中的链接),我们只会显示一条消息,说明此应用程序只能在从浏览器启动时使用,然后退出该应用程序

在我们的网页中,我们有一个文档列表和一个按钮,用于在electron应用程序中打开文档。此按钮实际上具有自定义协议href,其中文档ID作为参数传递

此electron应用程序只能在从浏览器启动时使用(使用自定义协议“my custom-protocol://document-id-here"). 根据传递的参数,我们决定在electron应用程序中打开哪个文档

如果用户试图直接打开应用程序(不使用浏览器中的链接),我们只会显示一条消息,说明此应用程序只能在从浏览器启动时使用,然后退出该应用程序

现在,如果用户尚未在其机器上安装应用程序,并尝试从浏览器中打开自定义协议链接,则我们会提示用户先安装应用程序,然后再次尝试打开链接。这是一个基本深度链接的示例,运行良好

为了更好的用户体验,我们想改变这种行为。因此,当用户尝试打开自定义链接(其中还包括documentID作为参数)而应用程序未安装时,我们将提示用户安装应用程序。但是,一旦安装了应用程序,我们希望使用正确的参数(单击链接的文档的documentID)自动启动应用程序,以便在安装后启动应用程序时打开正确的文档(我们希望实现延迟深度链接)


我已经看到了,但找不到足够的信息来实现这一点。

我解决这个问题的方法是在下载的可执行文件的名称中包含标识符,如
myAppName\uu[identifier].exe
[identifier]
部分将根据打开的文档而更改。然后在应用程序安装期间,我们可以读取可执行文件名(此过程在不同的操作系统中有所不同),提取标识符,然后使用它打开正确的文档