这是一种付款方式,可以在提交时将用户带到付款页面.
在iOS设备上,它可以提交和打开支付网关的页面.但是在Android中无法这样做.
当我检查日志时,我注意到的两件事是’设置原生 – > JS模式为null’和Thread没有名称指定.
我尽力了.但仍然没有运气.
解决方法
On iOS devices,it’s able to submit and open the page of the payment gateway. However fails to do so in Android.
嘿,我在facebook登录的javascript API提交时遇到了类似的问题.
安装Cordova inappbrowser插件为我做了诀窍.
https://github.com/apache/cordova-plugin-inappbrowser
此外,如果这不能解决问题,这就是我在你的位置会做的事情:(我假设你有一个LAMP服务器)
1)使用ajax将所有支付数据发送到php文件,将数据插入数据库,然后将该插入行的id返回到javascript,并将其存储在名为insertedPaymentId的变量中.
2)在LAMP服务器中创建一个php页面,然后调用它;
http://www.yourdomain.com/paymentSubmit.php
3)然后使用在应用程序浏览器中,在单击提交按钮并将支付数据插入数据库后,将insertedPaymentId推送到该paymentSubmit.php文件;
var ref = cordova.InAppBrowser.open('http://www.yourdomain.com/paymentSubmit.php?paymentID='+insertedPaymentId,'_blank','location=yes');
4)使用GET在paymentSubmit.php文件中获取insertedPaymentId变量,并在此php页面上从数据库中选择该付款数据,然后使用“隐藏”输入,设置此页面中的所有数据并有一个提交按钮,如“确认您的付款“像这样;
<form action="secure.payu/_payment.php..."> <input id="amount" type="hidden" value="<?php $db['amount']; ?>"/> <input id="productinfo" type="hidden" value="<?php $db['productInfo']; ?>"/> <input id="firstname" type="hidden" value="<?php $db['firstname']; ?>"/> <input type="submit" value="Confirm"/> </form>
在这种情况下,用户会看到他们的应用程序上有一个弹出窗口并要求他们确认付款,之后您实际上是在LAMP服务器和PHP环境中,做你想做的事情,如果你完成了你的提交,你可以通过在inappbrowser上阅读更多内容来关闭该窗口.
希望帮助,让我更新.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。