在安卓下的异常场景是,A页面调用了微信sdk的api(例如wx.getNetworkType),在api callback之前,用户点击后退按钮从A页面跳到了B页面,这时候这个callback函数被native注入到了B页面,由于这时候B页面刚刚加载进来,WeixinJSBridge还没有初始化完毕,这个callback就会失败,并报错。
我们捕获的demo:
A页面调用wx.getNetworkType,B页面会被注入javascript:WeixinJSBridge._handleMessageFromWeixin({"__json_message":{"__msg_type":"callback","__callback_id":"1020","__params":{"err_msg":"network_type:wifi"}},"__sha_key":"xxxx"}),然后就爆出"WeixinJSBridge is not defined"的错误。
过一段时间之后,weixin js sdk加载完毕,会有"WeixinJSBridge exec time"之类的提示,此时我们正常的wx.ready的代码可以执行。
Android下微信H5页面出现WeixinJSBridge is not defined的真正原因。
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。