iOS微信支付(详细版)
2017-06-12 本文已影响41人
无敌大闸蟹
1:首先,去下载微信SDK,这个是肯定的老铁。
2: 去开房平台,不对,开放平台申请微信支付所需的一些账号啥的
3:将SDK拖入工程,然后添加所需依赖库
然后在TARGETS-Info-URL Types 添加申请得到的注册微信支付的APPID
嗯,差不多就是这样 然后添加白名单
再然后就是一顿操作啦
4:开始写代码 在AppDelegate文件了引入#import"WXApiManager.h" 然后在- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions方法里注册微信支付
#pragma mark -微信支付回调
- (BOOL)application:(UIApplication*)application
handleOpenURL:(NSURL*)url
{
return[WXApihandleOpenURL:urldelegate:self];
}
//支付成功直接退出支付宝,下次打开支付宝时的回调,兼容ios8
- (BOOL)application:(UIApplication*)application
openURL:(NSURL*)url
sourceApplication:(NSString*)sourceApplication
annotation:(id)annotation
{
if([url.hostisEqualToString:@"safepay"]) {
[[AlipaySDKdefaultService]processOrderWithPaymentResult:urlstandbyCallback:^(NSDictionary*resultDic) {
NSLog(@"支付成功处理事项");
[[NSNotificationCenterdefaultCenter]postNotificationName:kaliPayNotificationobject:niluserInfo:resultDic];
}];
}else{
return[WXApihandleOpenURL:urldelegate:self];
}
returnYES;
}
//支付成功直接退出支付宝,下次打开支付宝时的回调,iOS9以后使用新Api接口
- (BOOL)application:(UIApplication*)app
openURL:(NSURL*)url
options:(NSDictionary
*)options
{
if([url.hostisEqualToString:@"safepay"]) {
[[AlipaySDKdefaultService]processOrderWithPaymentResult:urlstandbyCallback:^(NSDictionary*resultDic) {
NSLog(@"支付成功处理事项");
[[NSNotificationCenterdefaultCenter]postNotificationName:kaliPayNotificationobject:niluserInfo:resultDic];
}];
}else{
return[WXApihandleOpenURL:urldelegate:self];
}
returnYES;
}
上面有些支付宝的代码 懒得删 自己看着用吧。。。。。。。
5:AppDelegate遵守WXApiDelegate,实现微信的代理方法
得到结果后可以发送个通知给app里的支付页面
6 : 在需要支付的地方拉起微信支付
dict是请求后台微信价签信息返回的字典 解析后填入rep所需要的这些字段 就可以了
7:支付完了之后结果会通过第五步的通知中心传达到支付页面 一般是再请求后接口 与后台校验数据 然后就可以幸福的支付了╮(╯▽╰)╭哎
8:再检查检查代码。。。。。。。。。。。。。。。。
第一次写 就这样~
上一篇下一篇