支付宝支付开发IOS图文教程案例

2025-05-29 0 103

前言:继上次《微信支付开发ios图文教程案例》以来,一直没有太多时间,更新总结详细支付这样的长篇大论,很抱歉。今天,推出支付宝支付的详细流程。

支付宝支付开发IOS图文教程案例

1、开始下载和查看支付宝支付的demo。

我们直接进入支付宝的支付平台参考来进行集成支付宝支付:

    https://doc.open.alipay.com/doc2/detail.htm?spm=a219a.7629140.0.0.jiukaq&treeid=59&articleid=103675&doctype=1

支付宝支付开发IOS图文教程案例

  集成过程基本上就是按照上面的四个流程就可以完成集成ios的支付宝sdk。

  好,我们实际步骤来一边流程:

  点击下载sdk和demo

    支付宝支付开发IOS图文教程案例

  然后就会进入下面的一页,网址这里顺便给出:https://doc.open.alipay.com/doc2/detail.htm?treeid=54&articleid=104509&doctype=1

  支付宝支付开发IOS图文教程案例

  下载之后解压:

支付宝支付开发IOS图文教程案例

  然后运行demo之后:

支付宝支付开发IOS图文教程案例

  我们会发现,不管我们点击那个cell都会弹出这个的信息提示框。我们需要在源码中找到弹出这个信息的地方,这里顺便教大家一个快速找到目标代码的方法。

  你看弹出框提示的是:"缺少partner或者seller或者私钥",然后就这样:

支付宝支付开发IOS图文教程案例

  从上面图中的148、149、150行代码,我们可以看到,我们需要三个参数的值:partner、seller、privatekey。

  那么这三个参数就需要商户app申请的:

支付宝支付开发IOS图文教程案例

2、我们自己来实现支付宝支付功能:

  2-1、添加sdk:

  支付宝支付开发IOS图文教程案例

  2-2、添加sdk依赖的类库:

支付宝支付开发IOS图文教程案例

  2-3、我们创建一个订单对象: alipayorder 

  支付宝支付开发IOS图文教程案例

  2-4、然后我们把支付宝demo中的订单对象的参数都拷贝进去:

支付宝支付开发IOS图文教程案例

  2-5、接着我们来处理支付的代码:

支付宝支付开发IOS图文教程案例

  2-6、下面我对拷贝的部分代码适当的抽取和修改,最后放在在了一个alipay的方法中:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79
- (void)alipay {

// 支付宝支付

/* 在调用支付宝支付之前,需要我们将相关订单参数发送至我们的后台服务器,由后台服务器进行签名处理,

并返回客户端所有相关参数,客户端直接使用参数调起支付宝支付。

*/

/*

*商户的唯一的parnter和seller。

*签约后,支付宝会为每个商户分配一个唯一的 parnter 和 seller。

*/

/*============================================================================*/

/*=======================需要填写商户app申请的===================================*/

/*============================================================================*/

nsstring *partner = @"";

nsstring *seller = @"";

nsstring *privatekey = @"";

/*============================================================================*/

/*============================================================================*/

/*============================================================================*/

//partner和seller获取失败,提示

if ([partner length] == 0 ||

[seller length] == 0 ||

[privatekey length] == 0)

{

uialertview *alert = [[uialertview alloc] initwithtitle:@"提示"

message:@"缺少partner或者seller或者私钥。"

delegate:self

cancelbuttontitle:@"确定"

otherbuttontitles:nil];

[alert show];

return;

}

/*

*生成订单信息及签名

*/

//将商品信息赋予alixpayorder的成员变量

alipayorder *order = [[alipayorder alloc] init];

order.partner = partner;

order.seller = seller;

order.tradeno = @"1234567890"; //订单id(由商家自行制定)

order.productname = @"测试商品标题"; //商品标题

order.productdescription = @"测试商品描述"; //商品描述

order.amount = @"0.01"; //商品价格

order.notifyurl = @"http://www.xxx.com"; //回调url

order.service = @"mobile.securitypay.pay";

order.paymenttype = @"1";

order.inputcharset = @"utf-8";

order.itbpay = @"30m";

order.showurl = @"m.alipay.com";

//应用注册scheme,在alixpaydemo-info.plist定义url types

nsstring *appscheme = @"alisdkdemo";

//将商品信息拼接成字符串

nsstring *orderspec = [order description];

nslog(@"orderspec = %@",orderspec);

//获取私钥并将商户信息签名,外部商户可以根据情况存放私钥和签名,只需要遵循rsa签名规范,并将签名字符串base64编码和urlencode

// id<datasigner> signer = creatersadatasigner(privatekey);

// 签名值由服务器处理并返回客户端

nsstring *signedstring = @"xxxxxxx_sign";

//将签名成功字符串格式化为订单字符串,请严格按照该格式

nsstring *orderstring = nil;

if (signedstring != nil) {

orderstring = [nsstring stringwithformat:@"%@&sign=\\"%@\\"&sign_type=\\"%@\\"",

orderspec, signedstring, @"rsa"];

// 发起支付

[[alipaysdk defaultservice] payorder:orderstring fromscheme:appscheme callback:^(nsdictionary *resultdic) {

nslog(@"支付结果 reslut = %@",resultdic);

}];

}

}

  2-7、另外我们需要在应用中注册appscheme,这个scheme可以从上面代码中获取:

  支付宝支付开发IOS图文教程案例

  2-8、添加appscheme

支付宝支付开发IOS图文教程案例

  2-9、支付代码处理之后,我们处理回调结果,我们需要在appdelegate中添加支付宝头文件#import <alipaysdk/alipaysdk.h>并添加处理回到结果的代理方法:

支付宝支付开发IOS图文教程案例

  2-10、别忘了添加按钮监听和设置商户id的参数

支付宝支付开发IOS图文教程案例

  补充:如果我们在使用支付宝支付的时候,如果我们手机安装了支付宝app,就会调用支付宝进行支付。

                     如果我们手机没有安装了支付宝app,就会调用h5界面进行支付。

3、获取商户支付id

  以上就是本文的全部内容,希望对大家的学习有所帮助。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 支付宝支付开发IOS图文教程案例 https://www.kuaiidc.com/93366.html

相关文章

发表评论
暂无评论