diff --git a/agentwebnodule/src/main/res/layout/agentweb_error_page.xml b/agentwebnodule/src/main/res/layout/agentweb_error_page.xml index a2c88cb..c800f3c 100644 --- a/agentwebnodule/src/main/res/layout/agentweb_error_page.xml +++ b/agentwebnodule/src/main/res/layout/agentweb_error_page.xml @@ -5,7 +5,7 @@ android:background="#ffffff"> - params = buildWebParams(); mUrl = (String) params.get("url"); + LogUtils.e(mUrl); mProcessId = (String) params.get("processId"); mTaskId = (String) params.get("taskId"); initWebView(); @@ -960,12 +961,14 @@ public class OaFlowCenterActivity extends BaseActivity { super.onPageFinished(view, url); mCsvWeb.setState(CustomStateView.STATE_SUCCESS); LogUtils.e("加载完成"); + int measuredHeight = view.getMeasuredHeight(); runOnUiThread(() -> { WebView webView = mWebView.getWebCreator().getWebView(); FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.WRAP_CONTENT); webView.setLayoutParams(params); +// webView.post(() -> webView.measure(0, 0)); }); } @@ -990,8 +993,11 @@ public class OaFlowCenterActivity extends BaseActivity { iAgentWebSettings.getWebSettings().setAllowFileAccess(true);//允许选择文件 iAgentWebSettings.getWebSettings().setAllowContentAccess(true);//允许选择文件 iAgentWebSettings.getWebSettings().setAllowFileAccessFromFileURLs(true);//允许选择文件 + iAgentWebSettings.getWebSettings().setDomStorageEnabled(true); iAgentWebSettings.getWebSettings().setAllowUniversalAccessFromFileURLs(true);//允许选择文件 iAgentWebSettings.getWebSettings().setSupportMultipleWindows(true);//是否允许多个窗口 + iAgentWebSettings.getWebSettings().setTextZoom(100); + iAgentWebSettings.getWebSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN); return iAgentWebSettings; } }) @@ -1199,6 +1205,8 @@ public class OaFlowCenterActivity extends BaseActivity { .navigation(mActivity, 15); } else if ("chooseUser".equals(method)) { onShowChooseUserDialog(params); + } else if ("androidAlert".equals(method)) { + ToastUtils.show(params); } }); @@ -1207,10 +1215,20 @@ public class OaFlowCenterActivity extends BaseActivity { @JavascriptInterface public void invokeNative(String method) { + LogUtils.e(method); if ("back".equals(method)) { LogUtils.e("关闭"); mActivity.setResult(RESULT_OK); mActivity.finish(); + } else if ("refreshView".equals(method)) { + runOnUiThread(() -> { + WebView webView = mWebView.getWebCreator().getWebView(); + FrameLayout.LayoutParams params = + new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, + FrameLayout.LayoutParams.WRAP_CONTENT); + webView.setLayoutParams(params); + webView.post(() -> webView.measure(0, 0)); + }); } } @@ -1221,6 +1239,8 @@ public class OaFlowCenterActivity extends BaseActivity { onShowTimePicker(type, callBack); } else if ("onShowPicker".equals(method)) { onShowPicker(type, callBack); + } else if ("doConfirmNode".equals(method)) { + onShowConfirmNode(type, callBack); } }); } @@ -1243,6 +1263,24 @@ public class OaFlowCenterActivity extends BaseActivity { } } + /** + * 页面弹出提示确认框 + * + * @param hint + * @param callBack + */ + private void onShowConfirmNode(String hint, String callBack) { + new AlertDialog.Builder(mActivity) + .setTitle("提示") + .setMessage(hint) + .setPositiveButton("确定", (dialog, which) -> { + mWebView.getJsAccessEntrace().quickCallJs(callBack); + }) + .setNegativeButton("取消", (dialog, which) -> dialog.dismiss()) + .create() + .show(); + } + /** * 显示选择人员 */ @@ -1260,6 +1298,7 @@ public class OaFlowCenterActivity extends BaseActivity { @Override public void doConfirmMulti(String ids, String names) { + LogUtils.e(ids); chooseDir.dismiss(); mWebView.getJsAccessEntrace().quickCallJs("addCheckUser", ids, names); }