# 我们在 APP 中访问 web 界面时,可能涉及到购买或者需要鉴权信息的情形,这个时候就需要同步 APP 本地的登录信息.

这里我用的是通过 JS 交互让 H5 页面获取到 token

通过实体类封装好 apptoken 另外 H5 调用的 android 方法也写在该实体类中,用 @JavascriptInterface 注解就好了,当 H5 页面需要登录时,自动跳转到 APP 原生登陆界面

登陆完成后通过 EventBus 发送消息,在基类 webActivity 中监听

webView.reload();

很好理解,重新加载网页。后面的

webViewComponent.init();

方法是干什么的呢?

webView.addJavascriptInterface(share, "appConfig");

添加 JS 交互的对象。在 init () 方法中,我们通过 JsBridgeHelper 的构造方法初始化 share 这个成员变量,而我们的 apptoken 正是在它的构造方法中获取的,这里不重走 JsBridgeHelper 的构造方法的话,H5 调用的时候还是会取到空的 apptoken

但是重新走完 JsBridgeHelper 的构造方法后,apptoken 被重新赋值,这样我们就能走完后面的流程了.