如何在Windows中注册自定义协议,以便在单击电子邮件或网页中的链接时打开我的应用程序并将URL中的参数传递给它?
有没有办法在Android 和 iOS中定义某种处理机制,允许我拦截以下任何一种:
myapp:///events/3/
- or -
http://myapp.com/events/3/
Run Code Online (Sandbox Code Playgroud)
我想"监听"协议或主机,并打开相应的Activity/ViewController.
如果这些可以尽可能在系统范围内,我也会喜欢.我想这将是iOS上的一个问题,但我理想情况下可以从任何应用程序中点击这两个方案中的任何一个,如超链接.Gmail,Safari等
我正在尝试将自定义协议注册到Mac上的应用程序,即:
我在Windows上使用此问题的信息成功完成了此操作:
我更愿意找到与浏览器无关的东西,换句话说就是在OS级别.我还希望通过shell脚本自动执行此注册,因此希望有一种方法可以执行此操作,而不涉及GUI.
谢谢!
我想要创建一个安装在多个平台(Windows,Mac OS,Linux)上的Java应用程序,作为此安装的一部分,我希望注册一个URL协议处理程序,以便在单击链接时加载我的应用程序.
即我想要这样的东西:myprotocol://example.com
这样做有什么综合方式吗?或者某种框架推断不同操作系统的差异.
我想打开app并使用Electron(macOS)通过深度链接传递参数.
项目'electron-deep-linking-mac-win'在GitHub上.

编辑package.json,按照'电子生成器'快速设置指南生成mac安装程序:
{
"name": "electron-deep-linking-osx",
"version": "1.0.0",
"description": "A minimal Electron application with Deep Linking (OSX)",
"main": "main.js",
"scripts": {
"start": "electron .",
"pack": "build --dir",
"dist": "build"
},
"repository": "https://github.com/oikonomopo/electron-deep-linking-osx",
"keywords": [
"Electron",
"osx",
"deep-linking"
],
"author": "GitHub",
"license": "CC0-1.0",
"devDependencies": {
"electron": "1.6.6",
"electron-builder": "17.1.2"
},
"build": {
"appId": "your.id",
"mac": {
"category": "your.app.category.type"
},
"protocols": {
"name": "myApp",
"schemes": ["myApp"]
}
}
}
Run Code Online (Sandbox Code Playgroud)
编辑main.js,附加代码注册myappurl方案协议,监听'open-url'事件 …
macos custom-protocol electron custom-url-protocol electron-builder