在我的应用程序中,我使用WebView。我得到的内容以html格式。所以我使用的是loadData()。Html内容属于支付网关。最初,当我使用loadData()加载它并签入setWebViewClient()方法shouldOverrideUrlLoading() onPageFinished()时,我将获得它的html内容,我将得到它的html内容,这是我最初加载的。但页面已成功加载。
在付款完成后,当我重定向回回调URL时,它会显示html内容.
这是我的WebView代码
viewDialoque.showDialog();
final JavaScriptInterface myJavaScriptInterface = new JavaScriptInterface(this);
webView.getSettings().setLightTouchEnabled(true);
webView.getSettings().setJavaScriptEnabled(true);
webView.addJavascriptInterface(myJavaScriptInterface, "AndroidFunction");
webView.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
Log.i(TAG, "Processing webview url click...");
view.loadUrl(url);
return true;
}
public void onPageFinished(WebView view, String url) {
// Log.i(TAG, "Finished loading URL: " + url);
viewDialoque.hideDialog();
}
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
Log.e(TAG, "Error: " + description);
}
});
webView.getSettings().setLoadsImagesAutomatically(true);
webView.getSettings().setDomStorageEnabled(true);
webView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
webView.getSettings().setDefaultZoom(WebSettings.ZoomDensity.FAR);
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setUseWideViewPort(true);
webView.getSettings().setBuiltInZoomControls(false);
webView.getSettings().setSupportZoom(false);
// webView.loadUrl(url);
webView.loadData(url, "text/html; charset=utf-8", "UTF-8");
如果您需要更多的信息,请告诉我。
编辑: html
字符串htmlData = "\n“+ "\n”+ document.getElementById("payForm").submit();
重定向..。
N“+”n“;
发布于 2022-01-29 08:19:43
试着像这样
WebView urlWebView = (WebView)findViewById(R.id.containWebView);
urlWebView.setWebViewClient(new AppWebViewClients());
urlWebView.getSettings().setJavaScriptEnabled(true);
urlWebView.getSettings().setUseWideViewPort(true);
// urlWebView.loadUrl("https://www.google.com/"); //For URL
urlWebView.loadData(yourData, "text/html", "UTF-8");
// OR
urlWebView.loadDataWithBaseURL(null, yourData, "text/html", "UTF-8", null);
public class AppWebViewClients extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// TODO Auto-generated method stub
view.loadUrl(url);
return true;
}
@Override
public void onPageFinished(WebView view, String url) {
// TODO Auto-generated method stub
super.onPageFinished(view, url);
}
}
https://stackoverflow.com/questions/70903339
复制相似问题