android与h5交互之js调用优化

本文分享了一次Android与H5交互中遇到的问题及解决办法。由于直接调用H5方法导致其他页面报错,通过在调用前增加判断检查方法是否存在,避免了错误发生,提升了应用稳定性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我很早之前写过一篇android与h5交互的文章,浏览量也很多,但是昨天遇到了一个问题,h5那边我说调用他们的js方法,导致h5加载报错,看了一下我项目中是这么写的:

mwv_h5.loadUrl("javascript:viewDidDisappear()");

问题就是我在基类里面写了这个方法,当时调试的时候并没有什么问题,但是上线了发现,其他的页面都受到了影响,都疯狂报错,原因就是我调试的h5页面是有viewDidAppear()这个方法的,但是因为我是写在基类的,其他页面没有这个方法的时候,就会报错了,零时处理的方式是,h5那边对我调用的时候进行了判断。

但是我们本地也要优化一下,防止下次再出现这种问题,优化后的写法是:

mwv_h5.loadUrl("javascript:window.viewDidDisappear&&viewDidDisappear()");

这样写的话,在调用h5页面方法之前先判断了是否有这个方法,有的情况下再去调用,这样就不会出错。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值