|
|
@@ -285,8 +285,20 @@ public class ActWeb extends BaseCompatActivity {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 是否响应返回键
|
|
|
+ */
|
|
|
@JavascriptInterface
|
|
|
- public void setCanGoBack() {
|
|
|
+ public boolean isResponseBack() {
|
|
|
+ return responseBack;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 设置是否响应返回键
|
|
|
+ */
|
|
|
+ @JavascriptInterface
|
|
|
+ public void setResponseBack(boolean responseBack) {
|
|
|
+ ActWeb.this.responseBack = responseBack;
|
|
|
}
|
|
|
|
|
|
@JavascriptInterface
|
|
|
@@ -377,7 +389,42 @@ public class ActWeb extends BaseCompatActivity {
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
+ @JavascriptInterface
|
|
|
+ public void finishAct() {
|
|
|
+ runOnUiThread(new Runnable() {
|
|
|
+ @Override
|
|
|
+ public void run() {
|
|
|
+ ActWeb.super.finish();
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
|
|
|
+ /**
|
|
|
+ * 是否响应返回键
|
|
|
+ */
|
|
|
+ private boolean responseBack = true;
|
|
|
+ @Override
|
|
|
+ public void onBackPressed() {
|
|
|
+ if(responseBack)
|
|
|
+ super.onBackPressed();
|
|
|
+ else {
|
|
|
+ loadJs("onBackPressed()");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private void loadJs(String js) {
|
|
|
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
|
|
|
+ mWebView.evaluateJavascript("javascript:"+js, new ValueCallback<String>() {
|
|
|
+ @Override
|
|
|
+ public void onReceiveValue(String value) {
|
|
|
+ //此处为 js 返回的结果
|
|
|
+ }
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ mWebView.loadUrl("javascript:"+js);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
@Override
|