我遇到的ping++支付问题总结

鉴于项目中遇到的ping++(支付宝,微信,银联)支付遇到的问题,写了这篇文章,一方面帮助自己巩固一下,另一方面也真心的希望可以给大家提供一点自己的经验。

安装,导入过程不在一一详细的叙述,官方有详细的文档。按照一步一步来,一般不会出现问题,这里,只是总结一下自己遇到的问题。


1.接入支付的代码如下:

[PingppcreatePayment:json

viewController:self

appURLScheme:kUrlScheme

withCompletion:^(NSString*result,PingppError*error) {

//支付结果的输出,在这里根据结果的成功和失败做出响应的处理,我的处理在方法zhifuJump:和zhifuNojump:中,此处不在写出。

NSLog(@"%@----------%@",result,error);

if([typeisEqualToString:@"buy"]) {

[selfzhifuJump:result];

}else{

[selfzhifuNojump:result];

}

}

];

注:json及请求到的charge,后台集成ping++之后,会给前端一个接口,传入相应的参数调用此接口酒会返回charge对象,然后根据charge对象就可以调用上面的方法即成支付。

         kUrlScheme这个是你定义的URL Scheme,支付宝、微信支付、银联和测试模式需要

2.调用哪种类型的支付,需要在info.plist将此应用设置为白名单,没有用到的支付方式可以不设置:

info.plist设置白名单

<key>LSApplicationQueriesSchemes</key>

<array>

<string>weixin</string>

<string>wechat</string>

<string>alipay</string>

</array>

需要注意的是,微信支付需要在info.plist中添加URL Schemes


info-URL Types中添加

3.解决支付宝不能返回应用的问题,在info.plist中进行如下图所示的配置:

info.plist设置

4.delegate中一定要写方法的回调:

// iOS 8及以下请用这个

- (BOOL)application:(UIApplication*)application openURL:(NSURL*)url sourceApplication:(NSString*)sourceApplication annotation:(id)annotation {

return[PingpphandleOpenURL:urlwithCompletion:nil];

}

// iOS 9以上请用这个

- (BOOL)application:(UIApplication*)app openURL:(NSURL*)url options:(NSDictionary*)options {

return[PingpphandleOpenURL:urlwithCompletion:nil];

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • iOS支付 iOS支付分为两类,第三方支付和应用内支付(内购)。 第三方支付包括:支付宝支付、微信支付、银联支付、...
    帅不过oneS阅读 3,028评论 2 8
  • iOS支付 iOS支付分为两类,第三方支付和应用内支付(内购)。 第三方支付包括:支付宝支付、微信支付、银联支付、...
    sillen阅读 1,466评论 0 1
  • 在我们应用开发中我们经常在自己的项目中使用到支付,下面我们来谈谈iOS这块的支付;iOS支付主要分为两类,第三方支...
    Hither阅读 8,607评论 9 42
  • iOS支付 iOS支付分为两类,第三方支付和应用内支付(内购)。 第三方支付包括:支付宝支付、微信支付、银联支付、...
    请输入账号名阅读 6,508评论 3 22
  • APP的跳转: 通过[ [UIApplication sharedApplication] openURL:url...
    贪吃的猫cx阅读 7,941评论 5 27

友情链接更多精彩内容