项目作者: liulingfeng

项目描述 :
基于jsbridge,处理外部设置WebViewClient导致jsbridge失效的问题
高级语言: Kotlin
项目地址: git://github.com/liulingfeng/CommonWebview.git
创建时间: 2019-07-23T03:16:41Z
项目社区:https://github.com/liulingfeng/CommonWebview

开源协议:

下载


CommonWebview

jsbridge源码 https://github.com/lzyzsd/JsBridge

1.基于jsbridge,处理外部设置WebViewClient导致jsbridge失效的问题

2.隔离jsbridge的实现

使用说明

  1. interface WebApi {
  2. @H5ToNative(methodName = "submitFromWeb")
  3. fun submitFromWeb(@Field returnData: String, @CallBack h5CallBack: H5CallBack)
  4. @NativeToH5(methodName = "functionInJs")
  5. fun functionInJs(@Field responseData: String, @CallBack h5CallBack: H5CallBack)
  6. }

业务方调用

  1. val webApi = H5Retrofit.getInstance(commonFragment?.getWebView()).create(WebApi::class.java)
  2. webApi?.functionInJs(Gson().toJson(user),object :H5CallBack{
  3. override fun callBack(data: String) {
  4. Log.e("德玛","h5返回数据$data")
  5. }
  6. })
  7. webApi?.submitFromWeb("submitFromWeb exe, response data 中文 from Java",object :H5CallBack{
  8. override fun callBack(data: String) {
  9. Log.e("德玛","h5返回参数$data")
  10. }
  11. })