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

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

- (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开发有兴趣的朋友有所帮助。

支付宝快速集成ios的更多相关文章

  1. 快速集成iOS基于RTMP的视频推流

    前言 这篇blog是iOS视频直播初窥:<喵播APP>的一个补充. 因为之前传到github上的项目中没有集成视频的推流.有很多朋友简信和微博上问我推流这部分怎么实现的. 所以, 我重新集 ...

  2. 集成支付宝钱包支付iOS SDK的方法与经验

    流程 摘自第一个文档<支付宝钱包支付接口开发包2.0标准版.pdf> 图中的“商户客户端”就是我们的iOS客户端需要做的事情: 调用支付宝支付接口 处理支付宝返回的支付结果 在调用支付宝支 ...

  3. 集成支付宝钱包支付ios SDK的方法和经验

    没想到,支付宝的SDK是我目前用过的所有第三方SDK中最难用的一个了. 下载 首先,你要想找到这个SDK,都得费点功夫.现在的SDK改名叫移动支付集成开发包了,下载页面在 这里 的 “请点此下载集成开 ...

  4. iOS简单快速集成Cordova

    如果你对于什么是Cordova还不了解,可以先移步到我另一个文章:Cordoval在iOS中的运用整理 里面有详细的介绍跟如何搭建Cordova:而本文则是要介绍JiaCordova插件,如果你有一点 ...

  5. 集成支付宝钱包支付 iOS SDK 的方法与经验

    下载 首先,你要想找到这个SDK,都得费点功夫.现在的SDK改名叫移动支付集成开发包了,下载页面在 这里 (http://t.cn/8ksiklD)的 “请点此下载集成开发包(http://t.cn/ ...

  6. iOS支付宝支付集成

    概述 iOS支付宝支付集成 详细 代码下载:http://www.demodashi.com/demo/10729.html 支付宝和微信都是业界的老大哥,相信大家都有所觉得文档.SDK都是各种坑吧( ...

  7. ios 支付宝支付集成

    支付宝支付: 下载官方demo,把需要的framwork下载下来,在自己的工程中,新建文件夹,然后全部塞进去,到build phases中把需要的全部导入,其中xcode7以上需要多导入两个.a文件, ...

  8. iOS-- 快速集成iOS基于RTMP的视频推流

    效果图 iTools有点卡, 但是推到服务器倒是很快的. 推流 前言 这篇blog是iOS视频直播初窥:<喵播APP>的一个补充. 因为之前传到github上的项目中没有集成视频的推流.有 ...

  9. ios--集成支付宝钱包支付iOS SDK的方法与经验

    文/胖花花(简书作者)原文链接:http://www.jianshu.com/p/fe56e122663e著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”. 没想到,支付宝的SDK是我目前 ...

随机推荐

  1. spring boot mysql 事务

    mysql默认 事务自动提交.即:每条insert/update/delete语句,不需要程序手工提交事务,而是mysql自行提交了. 如果我们想实现程序事务提交,需要事先关闭mysql的自动提交事务 ...

  2. C#学习 - 关于Interlocked.CompareExchange()的用法

    https://blog.csdn.net/jianhui_wang/article/details/80485517 Interlocked.CompareExchange有一组函数   名称 说明 ...

  3. python发送微信

    申请企业微信 使用python发送信息到企业微信,同时支持python2与python3环境,需要先申请一个企业微信,然后创建应用,获取以下三个信息 企业IP.Agentid.Secret 网信为创建 ...

  4. web三大组件

    1.Servlet Servlet是用来处理客户端请求的动态资源,也就是当我们在浏览器中键入一个地址回车跳转后,请求就会被发送到对应的Servlet上进行处理. Servlet的任务有: 接收请求数据 ...

  5. Silverlight 鼠标双击 事件

    Silverlight 双击事件例子 <UserControl x:Class="MouseDbClick.MainPage" xmlns="http://sche ...

  6. AndroidStudio打包jar

    1.像平常一个样新建一个项目 2.(在步骤1的基础上)点击File-->New-->New Module—>选择Android Library-->点击Next(如下图:) 定 ...

  7. Unity String 转换成 Vector3

  8. MATLAB基本概念和变量

    基本概念 1.x=int8(129)=>x=127     (带符号8位整数,最大值为127) x=uint8(129)=>x=129  (无符号型,最大值为255) 2.class函数得 ...

  9. Apache Beam的特点

    不多说,直接上干货! Apache Beam 有两大特点: 1.统一了数据批处理(batch)和流处理(stream)编程范式: 2.能在任何执行引擎上运行. 它不仅为模型设计.更为执行一系列数据导向 ...

  10. JavaSE之Java基础(1)

    1.为什么重写equals还要重写hashcode 首先equals与hashcode间的关系是这样的: 1.如果两个对象相同(即用equals比较返回true),那么它们的hashCode值一定要相 ...