最近做与app端的混合开发,了解到了H5与原生app端之间的方法互通

首先是我们给app端定义方法供他们使用(以vue为例)

methods中定义一个方法名称

VContent() {

console.log("给app用的方法")

},

// 接着我们将这个方法在生命周期中挂载到window即可,没错,就是这么简单

mounted(){

window.VerifyContent = this.VerifyContent;

},

// 这样app端就可以使用我们的这个方法了

有的时候 还会安卓和ios端需要区别处理的情况

getDemo() {

let u = navigator.userAgent;

let isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端

if (isiOS) {

//ios端的操作

} else {

//安卓端的操作

}

},

// 同样将这个方法在生命周期中挂载到window即可

在这些方法中是支持参数传递的,比如我在开发过程中 ios支持给我的方法传递多个参数,而安卓端则需要将所有参数合并为一个对象传递给我

那我们H5怎么调用app端的方法呢?

首先是Android

安卓端会由 app 向 h5 注入一个全局 js 对象,然后在 h5 直接访问这个对象,类似这样

H5调用起来也很简单:

try {

window.android.XXX(type, id);

} catch (error) {

console.log("Android error");

}

// android就是上方图片里那个name,面跟的.XXX便是安卓给你的方法

接下来是ios

try {

window.webkit.messageHandlers.XXX.postMessage(JSON.str ingify(json));

} catch(error) {

console.log("ios error");

}

// 这个XXX 就是ios给你的方法

vue 获取安卓原生方法_VUE H5调用原生APP方法实践笔记相关推荐

  1. h5调用原生App的方法合集

    h5调用原生App的方法合集 1.调用原生关闭函数 let u = navigator.userAgent let isAndroid = u.indexOf('Android') > -1 | ...

  2. 【Kotlin】Kotlin 类的继承 三 ( super 关键字使用 | super@ 外部调用父类方法 | 子类选择性调用 父类 / 接口 方法 super )

    文章目录 I . 子类调用父类总结 II . 子类调用父类方法 ( super ) III . 子类内部类调用父类方法 ( super@ ) IV . 子类选择调用不同的 父类 / 接口方法 ( su ...

  3. Vue学习(组件的定义及调用、路由)-学习笔记

    文章目录 Vue学习(组件的定义及调用.路由)-学习笔记 Vue学习(组件的定义及调用.路由)-学习笔记 可见代码参考学习:https://gitee.com/monkeyhlj/vue-learni ...

  4. java 调用父级方法_java子类调用父类的方法是什么

    java子类调用父类的方法:1.子类的对象调用方法时,会首先在子类中查找,如果子类中没有该方法,再到父类中查找:2.如果该方法中又调用了其他方法,那么还是按照之前的顺序,先在子类中查找,再在父类中查找 ...

  5. JS跟APP交互——H5调用原生APP的方法

    js向app传值问题 最近做的H5项目是需要嵌入到APP内使用的,这就涉及到js跟app交互的问题,我这边需要传值给app,以下是我在做项目过程中传值的方法,仅供参考. 解决方法 AppData这个J ...

  6. 安卓WebView(H5)调用原生相机及相册

    在开始叙述正文之前笔者先声明一下应用场景:例如在网页上的即时通讯需要能拍照或者从图库选择图片来进行上传,此场景下就可以用到这篇文章的内容 正文 首先,如果你已经把相机以及访问文件夹的权限都加上了并且W ...

  7. js调用android.webkit,h5调用原生App的方法合集 window.webkit.messageHandlers

    测试demo 调用原生关闭函数 let u = navigator.userAgent let isAndroid = u.indexOf('Android') > -1 || u.indexO ...

  8. FileReader()读取文件,h5调用原生相机拍照,FormData()上传服务器

    公司最近在做一个h5嵌入原生的项目,其中有一个需求是在没有和原生交互的前提下,调用调用手机相机进行拍照,然后将照片上传后端. 之前没接触过类似的需求,然后就感觉要调用移动端的硬件设备很是高大上:现在项 ...

  9. vue获取微信登陆权限_vue 微信授权登录解决方案

    背景 vue前后端分离开发微信授权 场景 app将商品分享到微信朋友圈或者分享给微信好友,用户点击页面时进行微信授权登陆,获取用户信息. 问题:没有固定的h5应用首页.授权后重定向url带参数并且很长 ...

最新文章

  1. 谷歌公布十大恶意网站 均曾攻击上万网站
  2. 【bzoj2154】Crash的数字表格 莫比乌斯反演
  3. 因为计算机中丢失ssce5432.dll,ssce5432.dll 64位
  4. AI换脸APP“ZAO”刷屏并一夜爆火,它能红多久?
  5. ACM的分类训练题集
  6. Qt Creator 4.9 发布
  7. pip install rrdtool
  8. 解决百度富文本框中添加的表格页面获取后不显示表格边框的问题
  9. 立即释放.net下的com组件
  10. win7 配置jdk
  11. SQL Server2008如何设置开启远程连接
  12. 互联网定律及效应汇编
  13. 2D卷积和3D卷积的区别及pytorch实现
  14. 数据可视化图表总结(一)
  15. 解决U盘文件变成快捷方式的最佳方法
  16. 使用反射生成 JDK 动态代理
  17. SQL Server 配置管理器
  18. java split 冒号_Java中字符串split() 的使用方法,没你想的那么简单
  19. CORR函数 看不明白
  20. FusionCharts简介

热门文章

  1. 中国医疗服务行业发展规划与未来投资方向展望报告2021-2027年版
  2. 字符编码转换(UTF8,UNICOD,GB2312。。。。。互相转换)
  3. ubuntu 12.10 显卡问题和解决 Failed to build fglrx-8.961 with DKMS
  4. hrsc2016 下载 数据集_中科图云
  5. 点云孔洞定位_点云处理——孔洞修补
  6. Canvas画布基本功能及实现网页签名功能
  7. linux的rwx权限,linux权限管理:rwx
  8. swiper排旋转木马自动轮播
  9. 通过HelloWord认识MSIL
  10. python+selenium—无弹窗驱动浏览器(无头浏览器)