ipaynowOneClickPay 1.1.0

ipaynowOneClickPay 1.1.0

测试已测试
Lang语言 Obj-CObjective C
许可证 MIT
发布最新发布2017年8月

huangrui‘mobilegroup’维护。



  • Chuck

iPaynow-OneClickPay-iOS: 一键支付

一、版本要求

iOS SDK要求iOS6.0及以上

二、接入流程

1).添加 podfile 文件

pod 'ipaynowOneClickPay','~> 1.0.9' 

2).运行 pod install

3).使用 .xcodespace 打开工程

2.手动接入

导入文件至工程
  • IPNOneClickDESUtil.h
  • IPNOneClickPayDelegate.h
  • IPNOneClickPayPlugin.h
  • IPNOneClickPreSignMessageUtil.h
  • libIPNOneClickPayPlugin.a
  • ipaynow.bundle

三、工程设置

一键支付页面需要隐藏状态栏,需要在工程的 info.plist 中将 View Controller-based status bar apperance 设置为

四、调用支付接口

1.使用 IPNOneClickPreSignMessageUtil 生成待签名订单

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyyMMddHHmmss"];
IPNPreSignMessageUtil *preSign=[[IPNPreSignMessageUtil alloc]init];
preSign.appId=kAppId;
preSign.mhtOrderNo=[dateFormatter stringFromDate:[NSDate date]]; preSign.mhtName=@"我是商户"; 
preSign.mhtOrderName=_txtOrderName.text; 
preSign.mhtOrderType=@"01";
preSign.mhtCurrencyType=@"156"; 
preSign.mhtOrderAmt=_txtOrdrAmt.text; 
preSign.mhtOrderDetail=_txtOrderDetail.text; preSign.mhtOrderStartTime=[dateFormatter stringFromDate:[NSDate
date]];
preSign.notifyUrl=@"http://192.168.1.154:8080/api/mchnotify";
preSign.mhtReserved=_txtMhtReserved.text;
preSign.userId=_txtUserId.text;
NSString *originStr=[preSign generatePresignMessage];

此时需要在对服务端的 originStr 进行签名。

2.调用支付插件

[IPNOneClickPayPlugin payByData:payData viewController:self delegate:self];

3.实现插件通知接口

通知协议为 IPNOneClickPayDelegate,商户需要在调用支付的 ViewController 中遵守此协议

- (void)oneClickPayPluginResult:(IPNOneClickPayResult)result errorInfo:(NSString *)errorInfo;

result 支付结果枚举值为

typedef NS_ENUM(NSInteger, IPNOneClickPayResult) { 
	IPNOneClickPayResultSuccess , //成功 
	IPNOneClickPayResultFail , //失败 
	IPNOneClickPayResultCancel , //取消 
	IPNOneClickPayResultUnknown //未知
};

其他设置

1.主题控件风格设置

+ (void)setIPNStemeColor:(UIColor *)color;

默认为红色

2.设置是否显示返回结果页

+ (void)setIsShowIPNPayResultPage:(Bool)beShowIPNPayResultPage; 

详见 Demo 及文档