支付宝快速集成ios

看一下这篇文章,非常不错,并在此感谢这篇文章的作者。

惯例,先写出嵌入支付宝的核心代码

- (IBAction)payWithAli:(UIButton *)sender {
    //生成订单信息NSString *orderString=[AlipayRequestConfig genOrderWithProductName:@"金币" productDescription:@"兑换抵用券" amount:@"0.03"];

    //前往支付宝界面
    [[AlipaySDK defaultService] payOrder:orderString fromScheme:kAppScheme callback:^(NSDictionary *resultDic) {
        dispatch_async(dispatch_get_main_queue(), ^{
            //解析返回状态码int resultSuccess = [[resultDic objectForKey:kALipaykeyResult] intValue];
            //是9000代表支付成功if (resultSuccess == kALipaykeyResultSuccess) {
                NSLog(@"支付成功");
            }else{
                NSLog(@"支付失败");
            }
        });
    }];
}

好了,代码写完了,其他的就是配置一些信息了。
最好先去读一下支付宝的官方帮助文档和实例代码(实例代码有些啰嗦)
1,将附件demo中的IntegratedAlipay文件夹拷贝到你所在的项目,找到AlipayHeader.h文件,填写必要的信息(kPartnerID,kSellerAccount,kAppScheme,kPrivateKey)。
2,在Build Phases-LinK Binary With libraries中添加SystemConfiguration.framework,添加步骤可以参阅 http://winann.blog.51cto.com/4424329/1601654。
3,在Build Settings中搜索Paths,找到FrameWork Search Paths,Header …,Library …,在个中添加你项目中AlipaySDK,和AlipayFils的路径;
实例
FrameWork Search Paths:
$(PROJECT_DIR)/IntegratedAlipay/IntegratedAlipay/AlipaySDK
Header Search Paths:
$(SRCROOT)/IntegratedAlipay/IntegratedAlipay/AlipayFiles
Library Search Paths:
$(PROJECT_DIR)/IntegratedAlipay/IntegratedAlipay/AlipaySDK

#include <openssl/asn1.h>这里报找不到的错误,就是上面信息没有配置或配置错导致的。
4,在info-URL Types 中添加一个,其中URL Scemes中的值和AlipayHeader.h中的kAppScheme的值保持一致。

 

出现的问题总结
1,如果这时点击按钮,还没有跳转到支付宝界面,不要急,有以下两种解决方法:
(1)在info.plist下找到Main storyboard file base name,删掉
(2)如果用到了storyboard 可以在调用AlipaySDK defaultService,后添加

NSArray *array = [[UIApplication sharedApplication] windows];
    UIWindow* win=[array objectAtIndex:0];
    [win setHidden:NO]; 

在返回结果后,再设置为显示

2,“系统繁忙 请稍后再试 ali64“,去确认订单信息(代码中的orderString)是否有误

//正确的订单信息
partner="xxxxx"&seller_id="xxxxx"& out_trade_no="DZSZ2NFIBQQKM5M"&subject="1"&body="我是测试数据"& total_fee="0.02"&notify_url="http://www.xxx.com"&service="mobile.securitypay.pay"&payment_type="1"&_input_charset="utf-8"&it_b_pay="30m"&show_url="m.alipay.com"&sign="aQJQ5JnU8Aqw990.000000D1J4KgSfgLbokbQdTbf4U0.000000HDoIZNg3IgsgtGPs0.0000004CKzZjCxqqsg78KUJxmuZCREaaE0.000000IBum5H34JBexkXaWrtP5O1pc7EZb0.0000006O5oAhSiw0Y2faaLNk2DYuCbTV1omeEv0Ugkyr9t78i4uJFgig0wXpqocOcw1936"&sign_type="RSA"

3,支付宝官方demo,编译出错
Build Setting-Valid Architectures-添加armv7s,armv7,arm64

4,由于虚拟机不能安装支付宝钱包,所以跳转到支付包钱包的功能,还未测试,以后会补上

demo地址:http://download.csdn.net/detail/shenhualxt/8482219

以上就介绍了IOS快速嵌入支付宝,包括了方面的内容,希望对IOS开发有兴趣的朋友有所帮助。

原文地址:https://www.cnblogs.com/lgphp/p/4360291.html