iOS

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:再检查检查代码。。。。。。。。。。。。。。。。



第一次写  就这样~

上一篇下一篇

猜你喜欢

热点阅读