* Android
调用Android原生方法 直接Android.方法名就可以,方法名由原生提供

* IOS
首先在created方法中全局挂载IOS指定的返回函数,用以接收返回数据
再去调用IOS的方法 window.webkit.messageHandlers.方法名.postMessage(params) params
是传递的参数(如果需要的)
uni-app实际开发中 需要在created中注册 onLoad中注册无法生效

* 以调用原生方法获取经纬度为示例 export default { computed: { u() { return navigator.
userAgent; }, isAndroid() { return this.u.indexOf("Android") > -1 || this.u.
indexOf("Adr") > -1; }, isiOS() { return !!this.u.match(/\(i[^;]+;( U;)?
CPU.+Mac OS X/); } }, methods: { /** 获取当前设备的系统 Android 还是 IOS */ getDeviceType()
{ if (this.isAndroid) { let androidRes = Android.getLnglat(); // 数据处理 xxx } else
if (this.isiOS) { let params = { getgps: "getgps", }; window.webkit.
messageHandlers.getGPSInfo.postMessage(params); } }, /** window全局注册的ios的返回函数 */
passGPSInfo(res) { console.log(res) // 数据处理 xxxx } }, created() { window.
passGPSInfo= this.passGPSInfo; } }

技术
今日推荐
PPT
阅读数 128
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:ixiaoyang8@qq.com
QQ群:766591547
关注微信