步骤1:启动IDE(如Xcode),把iOS包中的压缩文件中以下文件拷贝到项目文件夹下,并导入到项目工程中。
ZDPaySDK.framework
在Build Phases选项卡的Link Binary With Libraries中,增加以下依赖:
步骤2:在需要调用AlipaySDK的文件中,增加头文件引用。
import <ZDPaySDK/ZDPaySDK.h>
步骤3:组装请求信息。
- (void)viewDidLoad
{
[super viewDidLoad];
// 初如化
self.webView = [[ZDPayWebView alloc] init];
[self.view addSubview:self.webView];
ZDPayRequest *request = [[ZDPayRequest alloc] init];
// 交易订单
request.globalOrderNum = self.orderNumber;
// 金额
request.amount = self.money;
self.webView.delegate = self;
[self.webView reloadWithRequest:request];
}
步骤4 :接收回调方法 <ZDPayWebViewDelegate>
/*
* 支付完成 调用这个方法
*/
-(void)payWebView:(ZDPayWebView *)webView payCompleted:(NSDictionary *)response {
NSLog(@"---response--- %@",response);
if (self.blockcomplet) {
self.blockcomplet(response);
}
}
/*
* 支付界面 点击返回按钮(支付方式选择页红框按钮) 调用这个方法
*/
-(void)webViewBackButtonAction {
[self.navigationController popViewControllerAnimated:YES];
}
详细可参见Demo中示例文件
- ZDPaySDKDemo/ZDPayViewController.h
针对Demo的运行注意
1.iOS 9 以上系统版本如果需要使用支付宝、微信,需要在 Info.plist 里添加如下代码:
<key>LSApplicationQueriesSchemes</key>
<array>
<string>weixin</string>
<string>alipay</string>
<string>alipays</string>
</array>
2.针对 iOS 9 及以上系统的限制 http 协议的访问,如果 App 需要访问 http://, 则需要在 Info.plist 添加如下代码:
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
3.针对使用 Xcode 7 编译失败,遇到错误信息为:
XXXXXXX does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target.
请到 Xcode 项目的 Build Settings 标签页搜索 bitcode
,将 Enable Bitcode
设置为 NO
即可。