WebviewHandler.java
1.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
package com.polysoft.nafmii.webview;
import androidx.fragment.app.Fragment;
import com.polysoft.nafmii.activity.HomeActivity;
import com.polysoft.nafmii.bean.MenuBean;
import com.tencent.smtt.sdk.WebView;
public class WebviewHandler implements IWebview{
private static final String TAG = WebviewHandler.class.getName();
private final Fragment fragment;
private final WebView webView;
private final JavaToJsinterface java2js;
private final JsToJavaInterface js2java;
private boolean backIntercept = false;
public WebviewHandler(Fragment fragment, WebView webView) {
this.fragment = fragment;
this.webView = webView;
this.java2js = new JavaToJsinterface(webView);
this.js2java = new JsToJavaInterface(this, fragment, this.java2js);
webView.addJavascriptInterface(this.js2java, "$NativeApi");
}
public void setButtomMenu(MenuBean bean) {
HomeActivity activity = (HomeActivity) this.fragment.getActivity();
activity.setModuleStatus(bean);
}
@Override
public boolean canGoBack() {
if (this.backIntercept) {
return true;
}
if (this.webView.canGoBack()) {
this.webView.goBack();
return true;
}
return false;
}
@Override
public void loadUrl(String url) {
this.webView.loadUrl(url);
}
@Override
public String getUrl() {
return this.webView.getUrl();
}
}