In my application I am using WebView. I am getting content in html format. So I am using loadData(). Html content belongs to Payment Gateway. Initially I am getting html content when I load it using loadData() and check in setWebViewClient() method shouldOverrideUrlLoading() onPageFinished() I am getting URL's instead html content which I loaded initially. But page is loaded successfully.
After payment is done and when I redirecting to callback URL it showing me html content.
Here is my WebView code
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");
Please let me know if you require any additional information.
EDIT: html data
String htmlData = "<form id="payForm" action="https://pg.paylogic.biz/v1/jsp/paymentrequest" method="post"><input type="hidden" name="APP_ID" value="1002220117153242">\n" + "<input type="hidden" name="ORDER_ID" value="1643451746107404">\n" + "<input type="hidden" name="RETURN_URL" value="">\n" + "<input type="hidden" name="CUST_EMAIL" value="amit@gmail.com">\n" + "<input type="hidden" name="CUST_NAME" value="Amit Yadav">\n" + "<input type="hidden" name="CUST_STREET_ADDRESS1" value="38, Hitech City Rd">\n" + "<input type="hidden" name="CUST_CITY" value="Madhapur">\n" + "<input type="hidden" name="CUST_STATE" value="Test">\n" + "<input type="hidden" name="CUST_COUNTRY" value="India">\n" + "<input type="hidden" name="CUST_ZIP" value="443322">\n" + "<input type="hidden" name="CUST_PHONE" value="7330778210">\n" + "<input type="hidden" name="CURRENCY_CODE" value="356">\n" + "<input type="hidden" name="AMOUNT" value="30000">\n" + "<input type="hidden" name="PRODUCT_DESC" value="Test Product">\n" + "<input type="hidden" name="CUST_SHIP_STREET_ADDRESS1" value="">\n" + "<input type="hidden" name="CUST_SHIP_CITY" value="">\n" + "<input type="hidden" name="CUST_SHIP_STATE" value="">\n" + "<input type="hidden" name="CUST_SHIP_COUNTRY" value="">\n" + "<input type="hidden" name="CUST_SHIP_ZIP" value="">\n" + "<input type="hidden" name="CUST_SHIP_PHONE" value="">\n" + "<input type="hidden" name="CUST_SHIP_NAME" value="">\n" + "<input type="hidden" name="TXNTYPE" value="SALE">\n" + "<input type="hidden" name="HASH" value="608ADAC7005E4B5B4013F501A567C42D3EF7099A081227304AB03567D9DFD436">\n" + " document.getElementById("payForm").submit();
Redirecting...
\n" + "\n";