【招商银行-掌上生活-运行H5页面】JS-SDK及其特有schema

掌上生活是一个比较先进的银行App,不能单纯当作浏览器来处理,其有专门提供的JS-SDK供调用
JS-SDK: https://open.cmbchina.com/Platform/#/resource/document/jsSDKweb

若是不想引入这个库的话,有一些细微但重要的功能能够直接仿写,好比判断是否在掌上生活中,就是经过正则匹配UA判断的浏览器

判断是否在掌上生活中:/cmblife/.test(ua);安全

在该App内想要唤起美团,也不能直接使用常规的方法,而是必须经过其特有的schema编码

在掌上生活中唤起美团并打开指定H5页面:cmblife://web/startApp/imeituan?uri=imeituan%3A%2F%2Fwww.meituan.com%2Fweb%3Furl%3Dhttps%253A%252F%252Fdpurl.cn%252Fn%252FVKV1ld8url

其中后面的部分为imeituan://www.meituan.com/web?url=encodeURI(url)格式的再编码,也就是我们内部本身的标准,关键就是前面cmblife://web/startApp/imeituan?uri=的部分必需要写对code

关于唤起美团并打开指定页面,值得注意的是,掌上生活安卓如今是有BUG的,打开的页面url自己不能有&号,否则会出现问题,也就意味着url不能携带一个以上的参数。咱们的解决方案是经过转成重定向的短链来解决,平台短链服务地址:http://infoplatform.dper.com/oss/operate/shortlinkorm

若是实在须要传多参数,能够考虑把全部参数都弄成一个转码后的JSON对象,而后设置惟一的参数进行传递对象

JS-SDK中也提供了在掌上生活中唤起App的方法,不过若是不想引入的话,也能够考虑本身写。和常规唤起方法不太同样的是,不用区分IOS和安卓,均使用iframe的方式便可,事实上由于其UA是定制化过的,想判断平台可能也会存在一些问题get

想用掌上生活的线上包打开指定url的页面,须要用到cmblife://go?url=web&next=&version=v2 注意next参数须要放的是encodeURI编码后的页面url。由于涉及到安全问题,因此打开的页面连接必须行方配置白名单才可使用,须要和行方沟通协商iframe

若是页面想要关闭自身,可使用cmblife://web/close连接,当前安卓版有BUG可能致使没法正确关闭,但这是他们应该解决的问题

相关文章
相关标签/搜索