iOS 支付宝第三方使用步骤
使用支付宝进行一个完整的支付功能,大致有以下步骤:
1 与支付宝进行签约,获得商户ID(partner)和账号ID(seller)
2 下载相应的公钥私钥文件(加密签名用)
3 下载支付宝SDK
4 生成订单信息
5 调用支付宝客户端,有支付宝客户端跟支付宝安全服务器打交道
6 支付完毕后返回支付结果给客户端和服务器
支付功能的实现 有两种方式:
1 支付宝的应用可以 用url 直接连接到 支付宝的官网 (当然后台是要进行处理的)
2 第二种就是添加支付宝的第三方了 首先 下载支付宝的demo
支付宝的demo 一般的常见问题解决
1 No architecutures to compile for (ONLY_ACTIVE_ARCH = YES, active arch = x86_64,VALID_ARCHS = i386)
出现这样的问题一般是 将 64 位编译进去就能解决了(这个问题只要你下载的是最新的demo一般很少见了 )
解决方案:
targets -> Architectures 下面的Valid Architectures 添加上 arm64
2 将支付宝的第三方添加到项目中的时候 有时 会出现 openssl 文件中的.h 文件报错 说此文件不能被找到
出现这样的问题是 的原因一般是添加的路径 不对
解决方案:
点击项目名称,点击“Build Settings”选项卡,在搜索框中,以关键字“search”搜索,对“Header Search Paths” 增加头文件路径:$(SRCRCOT)/项目名称 设置一下路径 一般都能解决。
3 Cannot find interface declaration for "NSObject", supercalss of 'Base64'
解决方案 打开报错的文件,增加头文件
#import <Foundation/Foundation.h>
基本上支付宝中的demo 里面的问题一般都会得到解决。然后 看着demo 跟实际的项目结合一下就ok 了
正式开始 支付宝教程:
(因为申请的工作不是我做的 所以就此过程就略了 )
1 将需要的文件,静态库等拖入工程中,这里有:include,libs,Utilities,libcrypto.a,libssl.a文件
2 添加 库
Linked Frameworks and Libraries 中 添加
libssl.a libcrypto.a SystemConfiguration.framework
AlipaySDK.framework
3 如果商户要在某个文件中使用给支付宝的SDK 类库,需要增加引用头文件
#import "Order.h"
#import "DataSigner.h"
#import <AlipaySDK/AlipaySDK.h>
4 后面的基本上都是 按照官方demo写的
接口调用步骤:
1.封装订单模型将商品信息赋予AlixPayOrder的成员变量
Order *order = [[Order alloc] init];
// 应用注册scheme,在项目的info.plist 定义URL types
NSString *appScheme = @"zhifu";
/生成订单描述
NSString *orderSpec = [order description];
2.签名:获取私钥并将商户信息签名,外部商户可以根据情况存放私钥和签名,只需要遵循RSA签名规范,并将签名字符串base64编码和UrlEncode
idsigner = CreateRSADataSigner(@“私钥key”);
NSString *signedString = [signer signString:orderSpec];
//传入订单描述 进行 签名
NSString *signedString = [signer signString:orderSpec];
3.生成订单字符串
NSString *orderString = [NSString stringWithFormat:@"%@&sign=\"%@\"&sign_type=\"%@\"",orderSpec,signedString, @"RSA"];
4.调用支付接口
[[AlipaySDK defaultService] payOrder:orderString fromScheme:appScheme callback:^(NSDictionary *resultDic) { }];
iOS 支付宝第三方使用步骤的更多相关文章
- [iOS]数据库第三方框架FMDB详细讲解
[iOS]数据库第三方框架FMDB详细讲解 初识FMDB iOS中原生的SQLite API在进行数据存储的时候,需要使用C语言中的函数,操作比较麻烦.于是,就出现了一系列将SQLite API进行封 ...
- iOS支付宝支付集成
概述 iOS支付宝支付集成 详细 代码下载:http://www.demodashi.com/demo/10729.html 支付宝和微信都是业界的老大哥,相信大家都有所觉得文档.SDK都是各种坑吧( ...
- iOS微信第三方登录实现
iOS微信第三方登录实现 一.接入微信第三方登录准备工作.移动应用微信登录是基于OAuth2.0协议标准构建的微信OAuth2.0授权登录系统.在进行微信OAuth2.0授权登录接入之前,在微信开 ...
- 调用支付宝第三方接口(沙箱环境) SpringMVC+Maven
一.蚂蚁金服开放平台的操作 网址:https://open.alipay.com/platform/home.htm 支付宝扫码登陆
- Android 集成支付宝第三方登录
前言: 在集成支付宝支付的时候遇到一点小麻烦,先在此记录供大家参考 1.授权 支付宝第三方登录需要在后台进行授权,在查看授权的时候我们一定要看清楚时候真的已经获得了权限(我在没有获取权限的情况下集成的 ...
- pycharm 安装第三方包步骤
pycharm 安装第三方包步骤: 完成.
- iOS - (集成支付宝第三方SDK大坑总结)
其实集成支付宝相对于集成微信支付来说,支付宝算是简单的了,后续有空再去研究微信支付,现目前先总结一下集成支付宝所遇到的坑,其实支付宝的坑也不算太多,细算下来大概5-6个左右,但是其报错方式有点恶心,不 ...
- iOS支付宝集成步骤;王刚韧的技术博客
- iOS 强大第三方资源库
Github用法 git-recipesGit recipes in Chinese. 高质量的Git中文教程. lark怎样在Github上面贡献代码 my-git有关 git 的学习资料 giti ...
随机推荐
- repeater留言板[转]
做了一个网站,其中的在线留言板块是用Repeater来显示留言的,这样可以用少的代码还实现多的功能,但是不知道怎么分页,要是留言过多就会使页面变的很长,能过查看众多网友的经验,知道用PagedData ...
- 5.对与表与表之间的关系,efcore是如何处理的
public class Account { [Key] [DatabaseGenerated(DatabaseGeneratedOption.Identity)] public int Accoun ...
- [SAP ABAP开发技术总结]ABAP调优——Open SQL优化
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- 在ionic/cordova中使用Form模型验证(w5cValidator)
在构建ionic项目过程中,当我们创建一个类似表单提交的页面时,可能会对用户的输入内容做某些规则验证,通过后再执行提交处理. 在验证的过程中,为了提供较好的用户体验,可能希望有类似于jquery Va ...
- ubuntu 14.04 java开发环境搭建 jdk 以及 inteliJ IDEA安装
1.安装包 jdk1.7.0_71 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-188026 ...
- 慕课网__css_ float
- js获取当前日期时间格式为“yyyy-MM-dd HH:MM:SS”
废话不多说,直接上代码! <!DOCTYPE html><html><head> <meta charset="utf-8"> ...
- Observer,Observable实现观察者模式
(#)个人对于观察者的理解:观察者与发布订阅模式是非常的相似的,例如当多个威信使用者订阅了同一个主题之后,那么这个主题就是一个被观察者,而这些用户就是观察 者,当这个主题更新了新的内容以后,就要通知所 ...
- MR21、MR22和CK24的区别
MR21和CK24都是用于修改物料标准价,但两者功能和用法上有所区别:MR21是直接更改单价, CK24是在CK11N或CK40N价格评估的基础上的价格核发, CK24记录价格评估, 价格评估在做 ...
- 《高级Web应用程序设计》课程
一.课堂课件 全部授课内容 二.作业 访问ftp://192.168.42.254:22,登录后找到自己的姓名文件夹,放入作业即可.登录账号为stu1,密码为空. 已布置练习 练习1(截止日期10月1 ...