Java android中的UPI集成:如何使用onActivityResult?
Java android中的UPI集成:如何使用onActivityResult?,java,android,python,kivy,upi,Java,Android,Python,Kivy,Upi,UPI(统一支付接口)是印度银行的支付接口。 在UPI中,事务是链接。就像比特币交易是信息一样 这些链接将传递给UPI支付应用程序,付款人必须登录该应用程序并单击“支付”按钮 我们的应用程序必须启动intent并传递指向UPI支付应用程序的链接,在付款人单击“支付”按钮后,我们需要在ActivityResult上调用。 我对java中的android开发一无所知。 我使用python kivy进行android开发。我想知道我的onActivityResult应该做什么 示例代码: 我可以使用
UPI
(统一支付接口)是印度银行的支付接口。
在UPI中,事务是链接。就像比特币交易是信息一样
这些链接将传递给UPI支付应用程序,付款人必须登录该应用程序并单击“支付”按钮
我们的应用程序必须启动intent并传递指向UPI支付应用程序的链接,在付款人单击“支付”按钮后,我们需要在ActivityResult上调用。
我对java中的android开发一无所知。
我使用python kivy进行android开发。我想知道我的onActivityResult
应该做什么
示例代码:
我可以使用pyjnius在python中使用java代码
一些参考链接:
活动A:
Intent start = new Intent(MainActivity.this, PurchaseActivity.class);
startActivityForResult(start, 1);
并添加此结果侦听器:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
if (requestCode == 1) {
if (resultCode == RESULT_OK) {
//payment was successful
}else if (resultCode == RESULT_CANCELED) {
//payment was canceled
}
}
}
和活动B:
如果付款成功:
setResult(RESULT_OK, new Intent());
finish();
或者如果它被取消了:
setResult(RESULT_CANCELED, new Intent());
finish();
活动A:
Intent start = new Intent(MainActivity.this, PurchaseActivity.class);
startActivityForResult(start, 1);
并添加此结果侦听器:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
if (requestCode == 1) {
if (resultCode == RESULT_OK) {
//payment was successful
}else if (resultCode == RESULT_CANCELED) {
//payment was canceled
}
}
}
和活动B:
如果付款成功:
setResult(RESULT_OK, new Intent());
finish();
或者如果它被取消了:
setResult(RESULT_CANCELED, new Intent());
finish();
您不需要手动执行此操作。我为它开发了一个图书馆。
只需要做一个简单的过程
final EasyUpiPayment EasyUpiPayment=new EasyUpiPayment.Builder()
.与(此)
.SetPayeVPA(“EXAMPLE@VPA")
.SetPayeName(“收款人名称”)
.setTransactionId(“唯一的交易ID”)
.setTransactionRefId(“唯一交易参考ID”)
.setDescription(“说明”或“小说明”)
.setAmount(“金额以十进制形式显示”
.build();
easyUpiPayment.startPayment();
欲了解更多信息,请访问以下网站。
您无需手动操作。我为它开发了一个图书馆。
只需要做一个简单的过程
final EasyUpiPayment EasyUpiPayment=new EasyUpiPayment.Builder()
.与(此)
.SetPayeVPA(“EXAMPLE@VPA")
.SetPayeName(“收款人名称”)
.setTransactionId(“唯一的交易ID”)
.setTransactionRefId(“唯一交易参考ID”)
.setDescription(“说明”或“小说明”)
.setAmount(“金额以十进制形式显示”
.build();
easyUpiPayment.startPayment();
欲了解更多信息,请访问以下网站。
请看一下“我是否应该假设只有付款人单击“支付”按钮时才会返回“确定”结果(对使用java进行android开发一无所知)如果付款人没有点击支付按钮或只是关闭了应用程序,那么结果\u Cancelled将被返回???也许可以看一看,我是否应该假设只有付款人点击支付按钮才会返回结果\u OK(关于android java开发的零知识)如果付款人不点击支付按钮或只是关闭应用程序,则结果_cancelled将被返回???实际上活动B不是我的活动,它是用户喜欢的支付授权应用程序。所以,我对活动B代码没有任何控制权。。。。那么,我是否应该假设活动B仅在付款完成时返回结果_OK??如果由于某种原因没有付款,那么活动B将返回结果\u cancelled???@prashantshigh,因为它是基于活动的。尝试查找其来源或类似的内容,并检查它是否返回RESULT\u OK或RESULT\u cancelled。但如果它是paynament活动,它可能设置了一些结果。实际上活动B不是我的活动,它是一个用户喜欢的支付授权应用程序。所以,我对活动B代码没有任何控制权。。。。那么,我是否应该假设活动B仅在付款完成时返回结果_OK??如果由于某种原因没有付款,那么活动B将返回结果\u cancelled???@prashantshigh,因为它是基于活动的。尝试查找其来源或类似的内容,并检查它是否返回RESULT\u OK或RESULT\u cancelled。但如果是paynament活动,它可能会产生一些结果。我们不能相信第三方lib对upi支付的信任。好的。然后,您可以参考此源代码。如果你按照自己的方式实现它,它也会是一样的。这个库有问题,很多用户没有UPI发现错误。它会给出错误,比如你的应用程序跨越了最大横切限制。。为什么是??解决方案是什么?我们不能在upi支付上信任第三方lib。好的。然后,您可以参考此源代码。如果你按照自己的方式实现它,它也会是一样的。这个库有问题,很多用户没有UPI发现错误。它会给出错误,比如你的应用程序跨越了最大横切限制。。为什么是??什么是解决方案??