如何在swift项目中集成PayUMoney iOS SDK
我已经从PayUMoney网站下载了PayUMoney iOS SDK。我现在无法将SDK与我的swift项目集成。这个答案来自PayU文档本身,我在这里回答这个问题只是因为我花了几个小时来实现他们的文档 嗨,我可以指导你进行非无缝集成。 在非无缝集成中,PayU已经提供UI,并将处理卡类型和所有支付流程,最后将通知您的交易状态以及失败原因和所有详细信息 从此处下载SDK: 从示例代码中,从“BusinessLayer”文件夹复制文件 因此,我希望您现在拥有所有必需的文件,我们可以进一步进行集成 您正在将PayU与swift集成,因为PayU团队没有swift SDK,我们必须继续与Objective-C进行绑定。 您可以在此处找到有关此的信息: 在build设置中创建并配置头文件后,导入SDK的以下头文件如何在swift项目中集成PayUMoney iOS SDK,ios,swift,payumoney,Ios,Swift,Payumoney,我已经从PayUMoney网站下载了PayUMoney iOS SDK。我现在无法将SDK与我的swift项目集成。这个答案来自PayU文档本身,我在这里回答这个问题只是因为我花了几个小时来实现他们的文档 嗨,我可以指导你进行非无缝集成。 在非无缝集成中,PayU已经提供UI,并将处理卡类型和所有支付流程,最后将通知您的交易状态以及失败原因和所有详细信息 从此处下载SDK: 从示例代码中,从“BusinessLayer”文件夹复制文件 因此,我希望您现在拥有所有必需的文件,我们可以进一步进行集
#import "PayU_iOS_CoreSDK.h"
#import <CommonCrypto/CommonHMAC.h>
#import "PUUIPaymentOptionVC.h"
#import "PUSAWSManager.h"
#import "PUSAWSManager.h"
#import "PUSAHelperClass.h"
这是我为进一步处理而创建的函数
func continueWithCardPayment() {
paymentParam.key = "gtKFFx"
paymentParam.transactionID = "umangtxn123"
paymentParam.amount = "100.0"
paymentParam.productInfo = "Nokia"
paymentParam.SURL = "https://google.com/"
paymentParam.FURL = "https://facebook.com/"
paymentParam.firstName = "Umang"
paymentParam.email = "umangarya336@gmail.com"
paymentParam.environment = ENVIRONMENT_MOBILETEST
paymentParam.udf1 = "udf1"
paymentParam.udf2 = "udf2"
paymentParam.udf3 = "udf3"
paymentParam.udf4 = "udf4"
paymentParam.udf5 = "udf5"
paymentParam.offerKey = "" // Set this property if you want to give offer:
paymentParam.userCredentials = ""
PUSAhelper.generateHashFromServer(self.paymentParam) { (hashes, errorString) in
self.hashes = hashes
self.paymentParam.hashes = hashes
self.callPaymentGateway()
}
}
func callPaymentGateway() {
let webServiceResponse :PayUWebServiceResponse = PayUWebServiceResponse()
webServiceResponse.getPayUPaymentRelatedDetailForMobileSDK(paymentParam) { (paymentDetail, errString, extraParam) in
if errString == nil {
let payOptionVC: PUUIPaymentOptionVC = loadVC("PUUIMainStoryBoard", strVCId: VC_IDENTIFIER_PAYMENT_OPTION) as! PUUIPaymentOptionVC
payOptionVC.paymentParam = self.paymentParam
payOptionVC.paymentRelatedDetail = paymentDetail
runOnMainThread({
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(self.paymentResponseReceived(_:)), name: kPUUINotiPaymentResponse, object: nil)
self.navigationController?.pushViewController(payOptionVC, animated: true)
})
}
else{
print("Failed to proceed for payment : \(errString)")
}
}
}
有一些我的自定义功能,将通过错误在您的身边复制粘贴,我在这里提到他们。一定要照顾他们
1) loadVC(“PUUIMainStoryBoard”,strVCId:VC\u标识符\u支付选项)
//Loadvc函数是我为加载视图控制器而创建的,您必须在调用视图控制器时对其进行更改
2) RunnonMainThread({
//此函数用于在主线程上运行代码
我使用了PayU团队提供的所有测试凭证
您可以在他们的文档中找到更多信息:
//通过这一行,我们添加了支付网关发送的通知,通知我们支付过程的状态,让我们兑现通知
func paymentResponseReceived(notify:NSNotification) {
print(notify)
}
您将在notify.object中获得响应。
您可以在他们的文档中找到更复杂的语言和方式:
希望这个答案能对您有所帮助。您能分享一下下载链接吗?这里只有sdk,没有集成说明。这是我得到的。PayU sdk似乎不可靠,请选择PayPal sdk,它使用非常简单,PayPal开发者网站提供了丰富的文档,可以帮助您在自己的网站上实现其sdk我确实试过这个。我从桥接头得到一个错误,说“找不到文件”,它说,“PayU_iOS_CoreSDK.h”在您拖动的文件夹中的桥接headerCheck for PayU_iOS_CoreSDK.h文件中找不到文件。如果sdk中没有此类文件,请下载示例项目并从thr获取文件。就支付集成而言,PayU sucks的generateHasFromServer,我们不应使用此方法,而应要求您的后端开发人员创建一个。
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(self.paymentResponseReceived(_:)), name: kPUUINotiPaymentResponse, object: nil)
func paymentResponseReceived(notify:NSNotification) {
print(notify)
}