美文网首页
h5调用IOS/安卓原生方法,原生调h5方法

h5调用IOS/安卓原生方法,原生调h5方法

作者: 顺小星 | 来源:发表于2020-10-01 11:42 被阅读0次

    之前也总结过h5调用原生的方法,但是写的不全。像调完原生之后,原生往往会有返回值,或者根据返回值的不同回调h5的方法。
    1、判断机型

    getType() {
                    var u = navigator.userAgent;
                    var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android安卓
                    var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios苹果
                    if (isAndroid) {
                        //如果是安卓
                          let obj = {
                            param:'123'
                        }
                        //androidMethodName是安卓定义的方法名称  跟h5无关  
                        Android.androidMethodName(obj)
                    } else if (isiOS) {
                        //如果是IOS
                        let obj = {
                            param:'123'
                        }
                       //androidMethodName是IOS定义的方法名称   跟h5无关
                        window.webkit.messageHandlers.IOSMethodName.postMessage(obj);
                    }
                },
    

    2、调取原生方法之后的回调方法(回调的方法名跟原生约定好,你们方法名需一致,譬如此处规定接收方法为getResult),在created里面注册一下回调的方法

    created() {
          window.getResult = this.getResult //注册到windows  调完原生方法之后 走h5的方法
    },
    methods: {
          getResult(res){
          //调用完成原生方法后,会走到这个方法
          }
    }
    

    今天是国庆,愿祖国繁荣富强,吾辈自强不息。

    相关文章

      网友评论

          本文标题:h5调用IOS/安卓原生方法,原生调h5方法

          本文链接:https://www.haomeiwen.com/subject/ywymuktx.html