给Windows 客户端添加 URL Protocol 支持,从网页唤醒应用

场景

在网页上可以直接唤起 Windows 客户端,比如在百度网盘的网页上点击下载,可以唤起安装在电脑上的百度网盘客户端,并将需要下载的文件参数传递给客户端。

实现

1 注册表

需要在注册表中写入相应的值,向 Windows 系统注册 URL Protocol 协议。
位置在 

计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ 

这里的 easibook 是协议名

设置 FriendlyAppName,在唤起客户端时,浏览器提示会使用这个名称。

这里的 %1 是参数,如果在网页上的调用是:easibook://open?aaa=AAA 123&bbb=BBB
则这里的 %1 参数就是 easibook://open/?aaa=AAA%20123&bbb=BBB,注意这里有 URL 编码,空格变成了 %20。
客户端程序的启动参数就是编码之后的这一串,需要自己进行解析,一般有库可以使用。

2 调用

直接在浏览器地址栏输入:easibook://open?aaa=AAA 123&bbb=BBB 即可完成调用。浏览器会给出提示:

如果是代码调用,则是:

window.location.href = "easibook://open/?aaa=AAA%20123&bbb=BBB"

或者使用 a 标签

<a href = "easibook://open/?aaa=AAA%20123&bbb=BBB"></a>

原文链接:https://www.juziyu.cn/634.html,转载请注明出处。

0
封面图

评论0

没有账号? 注册  忘记密码?

社交账号快速登录

微信扫一扫关注
如已关注,请回复“登录”二字获取验证码