这里很有必要记录一下银联支付的iOS控件的下载地址
银联支付SDK下载地址
git下载地址
选择手机控件下载即可,下载包中含有对应的开发文档和demo
本文记录主要讲把银联支付做成cocoapods组件供各位看官方便使用。
大家现在可以搜索
pod 'UnionPaySDK'
配置podspec文件
配置cocopod工程
配置UnionPaySDK.podspec文件
直接上podspec文件,主要配置请看注释
Pod::Spec.new do |s|
s.name = 'UnionPaySDK'
s.version = '0.0.2'
s.summary = '银联支付SDK'
s.description = <<-DESC
TODO: Add long description of the pod here.
DESC
#这里是首页,请写对你git的首页
s.homepage = 'https://github.com/7General'
s.license = { :type => 'MIT', :file => 'LICENSE' }
s.author = { 'wanghuizhou' => 'wanghuizhou@guazi.com' }
# 一定要写对你git上对应的工程的连接地址,否则lint时校验不通过
s.source = { :git => 'https://github.com/7General/UnionPaySDK.git', :tag => s.version.to_s }
s.ios.deployment_target = '8.0'
# 如果有.a或者framwork文件时一定要和class文件夹平级建设,应为在指定的sourcefile在class里面,然而里面确不能出现资源文件
s.vendored_libraries = 'UnionPaySDK/Frameworks/libPaymentControl.a'
s.libraries = 'z'
s.frameworks = 'CFNetwork','SystemConfiguration','CoreTelephony'
s.source_files = 'UnionPaySDK/Classes/**/*'
# 注意
s.user_target_xcconfig = {'OTHER_LDFLAGS' => ['-lc++']}
end
在配置该podspec文件时要注意
- s.source:一定要在创建的工程git地址
- s.vendored_libraries:这里是引用的资源文件,比如.a或者framewor文件等
- s.user_target_xcconfig:当前编译模式吧
info.plist添加协议白名单
info.plist添加协议白名单把下载的资源包解压
UPPaymentControl.h放入class文件夹
libPaymentControl.a放入frameworks文件夹
如图
工程文件夹 SDK文件夹
注意:一定要添加URL Types
添加URL Types
回调结果
-(BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {
[[UPPaymentControl defaultControl] handlePaymentResult:url completeBlock:^(NSString *code, NSDictionary *data) {
if ([code isEqualToString:@"success"]) {
if (nil == data) {
return;
}
NSData * singData = [NSJSONSerialization dataWithJSONObject:data options:0 error:nil];
NSString * sign = [[NSString alloc] initWithData:singData encoding:NSUTF8StringEncoding];
// 拿该证书去商户后台验签
if (YES/*验签sign*/) {
NSLog(@"//验签成功,展示支付成功提示");
}else {
NSLog(@"验签失败,交易可能被串改,商户app后台查询结果");
}
}else if([code isEqualToString:@"fail"]){
NSLog(@"交易失败");
}else if([code isEqualToString:@"cancle"]){
NSLog(@"交易取消");
}
}];
return YES;
}
上传cocoapod
上传的过程请查看下面这片文章
上传自己的私有的(公共的)CocoaPods支持库
有些地方说的不到位,还请各位看官指正。。。
- 如有问题可添加QQ群:234812704
- 欢迎各位一块学习,提高逼格!
- 也可以添加洲洲哥的微信公众号
可以来微信公众号(洲洲哥)后台给我们留言。 快来扫码关注我们吧!
公众号二维码
网友评论