舞影凌风
舞影凌风
我还是不能100%确定什么原因导致的呀,你这个是偶现?你最好给我抓一份传递的参数我来分析一下
>  > 大佬 这种方式的我应该怎么接收? 新增方法参数是 String 和 JBCallback 就好呀
可能是单双引导转义的问题。你对内容执行下urlencode应该也行
注入的js方法执行线程是主线程哈,所以如果方法有耗时操作记得在子线程里面。你可以先检查下是不是耗时的问题。另外的方式就是用 chrome://inspect/#devices 看看JS是不是报错了,比如方法找不到之类的
方便贴一下 端上jsbridge大概实现吗?
没关系的,最后只有一个全局对象。如果是前端调用后,端上又重新 onPageFinished 注入JS那就会有问题,你说的超过1min 还能回调恐怕不是这个问题。很可能是被阻塞住了。
应该是多次注入,导致原先的回调变量名被重置了有关系。你尽量保证一个页面只初始化一次吧。
> 有没有其他办法解决多次注入问题,如果再次注入不用重新new对象 这个只能修改注入的js,如果内存中已经存在window.jsBridge对象,就不再注入
ready 就是上面的变量,它其实是一个方法所以可以直接用 `ready()`, 多次调用直接多次执行 `window.onJsBridgeReady()` 就好
只需要回调一次哈,因为jsbridge 的注入是异步的,所以需要通知前端已经注入完成,通知一次就可以了,没必要多次