您的位置:首页 > 移动开发 > IOS开发

iOS 支付宝支付

2014-08-19 15:54 232 查看
一、在app中成功完成支付宝支付的过程

  1、申请支付宝合作。参考网址:

            https://b.alipay.com/order/productDetail.htm?productId=2012120700377310             http://blog.csdn.net/sing_sing/article/details/7701418      这是使用支付宝支付的第一步,合作申请通过之后,会集成一个开发文件。即使不申请也可以下载,只是demo中会缺少几个必须的参数: 在demo中的 PartnerConfig.h 文件中可以看到

//合作身份者id,以2088开头的16位纯数字

#define PartnerID @""

//收款支付宝账号

#define SellerID  @""

//安全校验码(MD5)密钥,以数字和字母组成的32位字符

#define MD5_KEY @""

//商户私钥,自助生成

#define PartnerPrivKey 

//支付宝公钥

#define AlipayPubKey   @"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCnxj/9qwVfgoUh/y2W89L6BkRAFljhNhgPdyPuBV64bfQNN1PjbCzkIM6qRdKBoLPXmKKMiFYnkd6rAoprih3/PrQEB/VsW8OoM8fxn67UDYuyBTqA23MML9q1+ilIZwBC2AQ2UBVOrFXfFl75p6/B5KsiNG9zpgmLCUYuLkxpLQIDAQAB"

只有这几个参数备齐之后,demo才可以完成支付,所以接下来第二步

2、生成RSA
    这个需要在windows系统下生成,开发文档中也有生成的步骤。我是直接问后台要了这几个参数,所以这一步只能简单写到这。
 3、导入框架
      根据集成文件的开发文档,导入框架。可以参考demo。当四个参数都备齐之后可以先在demo上试一下能不能成功支付。然后再往自己的程序中导入。

二、代码的使用
1、支付需要的参数
    在demo中的ViewController.h中可以看到有这么一段代码

@interface Product :NSObject{

@private
float _price;
NSString *_subject;
NSString *_body;
NSString *_orderId;
}

@property (nonatomic,assign)
float price;

@property (nonatomic,retain)
NSString *subject;

@property (nonatomic,retain)
NSString *body;

@property (nonatomic,retain)
NSString *orderId;

@end

 这个就是所支付产品需要的几个必要的字段。在开发文档中可以看到需要好多参数,但在真正用时,只需要特别注意这几个就行。demo中有自动拼接的方法,到时候直接调用就行。

2、app和支付宝客户端之间的跳转

   NSString *appScheme =
@"AlipaySdkDemo"; //应用跳转的URL
     *这里要和plist文件中URL types 下面的字段保持一致

3、支付结果的入口
  首先是WAP端的入口,在ViewController.m文件中可以找到,这里返回支付结果,比较简单,不多说。
  独立端的入口,在AppDelegate里面,我试着在viewcontroller中找这个,但最后没找到。最后只能设置一个观察者,把支付结果发送过来再进行处理。

三、总结
 第一次接触支付方面的东西,刚开始很迷茫,不明白其中财务方面是怎么对上号的。
 那些都是在后台进行处理的,iOS开发时需要做的,就是完成这个支付流程。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息