url scheme
程序员文章站
2024-03-15 15:36:48
...
最近因业务原因要求H5那边做一些需求,但是由于时间原因来不及做,所以临时解决办法是在H5页面加一个唤起客户端的入口。所以研究 了一下这种通信方式应该是使用URL Scheme,URL Scheme是一种页面跳转协议,通过这个协议我们可以实现app内部各个页面相互跳转,
可以通过浏览器或H5页面唤起app,还可以在两个app之间相互唤起和通信。
研究过前辈的经验指导这种协议的格式跟一般URL格式类似,可以是:
1、Scheme://Host:port/path?key=value
2、Scheme://域名
但是我实际实现的过程中发现,Scheme可以自行定义,而后边的须是你要唤起app的包名才可以成功,不知是否有别的配置?
下边是我的配置代码贴上:
在想要被唤起的app清单文件中添加以下配置
这里需要提醒大家的是scheme中最好不要使用大写字母,否则会导致在H5页面唤起无效的情况!
调用方式:
1、直接在浏览器地址栏输入配置scheme对应的地址,比如:sx://com.example.fragmentnest 点搜索,就会弹框提示是否要打开app
但是不是所有的浏览器都可以实现,感兴趣的同学可以尝试一下。
2、在H5页面 window.localtion.href = "sx://com.example.fragmentnest";
3、app之间相互调用
Intent intent = new Intent(Intent.ACTION_VIEW,Uri.parse("sx://com.example.fragmentnest"));
startActivity(intent);
欢迎批评指正!
推荐阅读
-
H5无法调起android app 的坑之 scheme 大小写
-
url scheme
-
Scheme & Rewrite
-
学习网站URL 博客分类: 其他 MongoDBjQueryGroovyGoogleSVN
-
资源url导致的session失效 javasession
-
获取一个地址的信息 博客分类: js-url href
-
获取地址栏的属性 博客分类: Web JS地址栏URL
-
GOOD URL 博客分类: WEB前端 Web
-
js获取url指定参数值 jsurl参数地址栏
-
jquery easy ui tree 空节点(无子节点)初始为closed状态展开是会重复加载原url的内容 博客分类: web前端 easyui