繁体   English   中英

window.open('my-app://', '_blank'); 不会从浏览器启动桌面应用程序,但会在浏览器中转到 my-app://

[英]window.open('my-app://', '_blank'); does not launch desktop app from the browser, but going to my-app:// in the browser does

如果我打开 Chrome 并在 URL / 搜索栏中输入my-app:// ,然后按 Enter,Chrome 会显示一个对话框,显示“打开我的应用程序?网站想要打开此应用程序”。 我可以单击确定,然后我的 Electron 应用程序将打开。

我有一个 React 应用程序,我想添加相同的功能,以编程方式提示用户通过警报启动应用程序。 我尝试添加window.open('my-app://', '_blank')以打开一个对话框,但它与另一个对话框不同,当我单击确定时,Chrome 告诉我有阻止了弹出窗口,并且应用程序无法打开。 我也尝试过使用window.location.href = 'my-app://' ,但它不起作用。 在控制台中,我收到错误消息:“无法启动 'my-app://',因为该方案没有注册的处理程序。”

如何向用户显示提示/警报,当单击确定时将启动我的应用程序,就像我在浏览器中手动输入 my-app:// 时一样?

尝试document.location ,这适用于打开 VS Code。

 function openVSC() { document.location = 'vscode://open?url='; }
 <button onClick="openVSC()">Open VS Code</button>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM