【问题标题】:Payment processing infinitely in WebView在 WebView 中无限处理付款
【发布时间】:2019-02-01 07:27:44
【问题描述】:

我有一个测试网站,在测试模式下 PayUMoney 支付处理工作完美。

我在webview 中使用了相同的url 并启用了javascript,但付款正在无限处理(永远加载)。

请帮我解决这个问题。谢谢!

public class MainActivity extends AppCompatActivity {

private WebView webview;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    webview =(WebView)findViewById(R.id.webView);

    webview.setWebViewClient(new WebViewClient());
    webview.getSettings().setJavaScriptEnabled(true);
    webview.getSettings().setDomStorageEnabled(true);
    webview.setOverScrollMode(WebView.OVER_SCROLL_NEVER);
    webview.loadUrl("https://gatewaypayment.000webhostapp.com");

}
@Override
// This method is used to detect back button
public void onBackPressed() {
    if(webview.canGoBack()) {
        webview.goBack();
    } else {
        // Let the system handle the back button
        super.onBackPressed();
    }
  }
}

【问题讨论】:

  • 仅供参考:WebView 不是全功能的网络浏览器,在某些情况下可能无法正常工作。如果您想要全功能浏览器,请使用 chrome 自定义标签
  • 但许多应用程序使用 webview 并处理他们的付款。有没有办法解决这个问题?
  • 可能其他支付网关可以使用 WebView。没有简单的方法可以解决,困难的方法不值得尝试

标签: android payment-processing


【解决方案1】:

我遇到过类似的情况,但最后发现长时间加载背后的原因是由于测试细节更新频繁,或者PayUMoney提供的测试环境已关闭。还要确保以下几点:

要在测试模式下测试 Bolt Checkout,您需要更改使用的 JavaScript 库以及使用测试模式键和盐来生成哈希。

因此,在测试模式下集成时,请在付款请求页面的head 部分包含如下所示的脚本。

<script id="bolt" src="https://sboxcheckout-static.citruspay.com/bolt/run/bolt.min.js" bolt-
color="<color-code>"
 bolt-logo="<image path>">
</script>

在沙盒上完成集成并进行测试后,将沙盒 JavaScript 库替换为 PayU 提供的生产库。

<script id="bolt" src="https://checkout-static.citruspay.com/bolt/run/bolt.min.js" bolt-color="<color-
code>"
bolt-logo="<image path>">
</script>

【讨论】:

    猜你喜欢
    • 2019-07-15
    • 1970-01-01
    • 1970-01-01
    • 2016-05-07
    • 2011-12-19
    • 2011-12-11
    • 2011-01-28
    • 2021-10-11
    • 2015-07-25
    相关资源
    最近更新 更多