Appearance
支付
支付目前仅支持微信、支付宝和苹果内购
微信支付
1.方法
orderInfo: 订单信息 productId: 产品号 money: 金额 extraData: 透传数据(需要SDK返回的数据) userAgent: User-Agent success: 成功回调 failure: 失败回调
/// 微信支付
/// - Parameters:
/// - orderInfo: 订单信息
/// - productId: 产品号
/// - money: 金额
/// - extraData: 透传数据(需要SDK返回的数据)
/// - userAgent: User-Agent
/// - success: 成功回调
/// - failure: 失败回调
- (void)wechatPayFromOrderInfo:(NSString *)orderInfo productId:(NSString *)productId money:(NSString *)money extraData:(NSString *)extraData userAgent:(NSString *)userAgent success:(nullable BrickComplete)success failure:(nullable BrickComplete)failure;
2.方法示例:
[BrickManager wechatPayFromOrderInfo:@"order_id" productId:@"product_id" money:@"0.01" extraData:@"" userAgent:@"" success:^(BrickCompleteResult * _Nonnull completeResult) {
BrickCompleteResult *result = completeResult;
NSInteger code = result.code;
NSString *message = result.message;
NSDictionary *data = result.data;
NSLog(@"wechatPaySuccess:%ld-----%@------%@",(long)code,message,data);
} failure:^(BrickCompleteResult * _Nonnull completeResult) {
BrickCompleteResult *result = completeResult;
NSInteger code = result.code;
NSString *message = result.message;
NSDictionary *data = result.data;
NSLog(@"wechatPayFailure:%ld-----%@----%@",(long)code,message,data);
}];
支付宝支付
1.方式一
order: 支付订单信息字串 productId: 产品号 money: 金额 extraData: 透传数据(需要SDK返回的数据) userAgent: User-Agent scheme: 调用支付的app注册在info.plist中的scheme success: 成功回调 failure: 失败回调
/// 支付宝支付
/// - Parameters:
/// - order: 支付订单信息字串
/// - productId: 产品号
/// - money: 金额
/// - extraData: 透传数据(需要SDK返回的数据)
/// - userAgent: User-Agent
/// - scheme: 调用支付的app注册在info.plist中的scheme
/// - success: 成功回调
/// - failure: 失败回调
+ (void)alipayFromOrder:(NSString *)order productId:(NSString *)productId money:(NSString *)money extraData:(NSString *)extraData userAgent:(NSString *)userAgent withScheme:(NSString *)scheme andCallBackSuccess:(nullable BrickComplete)success failure:(nullable BrickComplete)failure;
2.方式二
order: 支付订单信息字串 productId: 产品号 money: 金额 extraData: 透传数据(需要SDK返回的数据) userAgent: User-Agent dynamicLaunch: 是否使用动态配置策略跳转支付宝支付 scheme: 调用支付的app注册在info.plist中的scheme success: 成功回调 failure: 失败回调
/// 支付宝支付
/// - Parameters:
/// - order: 支付订单信息字串
/// - productId: 产品号
/// - money: 金额
/// - extraData: 透传数据(需要SDK返回的数据)
/// - userAgent: User-Agent
/// - dynamicLaunch: 是否使用动态配置策略跳转支付宝支付
/// - scheme: 调用支付的app注册在info.plist中的scheme
/// - success: 成功回调
/// - failure: 失败回调
+ (void)alipayFromOrder:(NSString *)order productId:(NSString *)productId money:(NSString *)money extraData:(NSString *)extraData userAgent:(NSString *)userAgent dynamicLaunch:(BOOL)dynamicLaunch withScheme:(NSString *)scheme andCallBackSuccess:(nullable BrickComplete)success failure:(nullable BrickComplete)failure;
3.方式三
order: 支付订单信息字串 productId: 产品号 money: 金额 extraData: 透传数据(需要SDK返回的数据) userAgent: User-Agent scheme: 调用支付的app注册在info.plist中的scheme universalLink: 调用支付的app关联的universalLink,如'https://render.alipay.com/' success: 成功回调 failure: 失败回调
/// 商户接入UniversalLink支付接口使用该接口
/// - Parameters:
/// - order: 支付订单信息字串
/// - productId: 产品号
/// - money: 金额
/// - extraData: 透传数据(需要SDK返回的数据)
/// - userAgent: User-Agent
/// - scheme: 调用支付的app注册在info.plist中的scheme
/// - universalLink: 调用支付的app关联的universalLink,如'https://render.alipay.com/'
/// - success: 成功回调
/// - failure: 失败回调
+ (void)alipayFromOrder:(NSString *)order productId:(NSString *)productId money:(NSString *)money extraData:(NSString *)extraData userAgent:(NSString *)userAgent withScheme:(NSString *)scheme universalLink:(NSString *)universalLink andCallBackSuccess:(nullable BrickComplete)success failure:(nullable BrickComplete)failure;
方法示例:
[BrickManager alipayFromOrder:@"order_id" productId:@"product_id" money:@"0.01" extraData:@"" userAgent:@"" withScheme:@"scheme" andCallBackSuccess:^(BrickCompleteResult * _Nonnull completeResult) {
BrickCompleteResult *result = completeResult;
NSInteger code = result.code;
NSString *message = result.message;
NSLog(@"alipaySuccess:%ld-----%@",(long)code,message);
} failure:^(BrickCompleteResult * _Nonnull completeResult) {
BrickCompleteResult *result = completeResult;
NSInteger code = result.code;
NSString *message = result.message;
NSLog(@"alipayFailure:%ld-----%@",(long)code,message);
}];
苹果内购
1.校验该设备是否可以支付
/// 校验该设备是否可以支付
+ (BOOL)canMakePayments;
方法示例:
BOOL canPayments = [BrickManager canMakePayments];
2.内购
orderId: 订单号 money: 金额 userId: 用户ID extraData: 透传数据(需要SDK返回的数据) userAgent: User-Agent success: 成功回调 failure: 失败回调
/// 内购
/// - Parameter productsId: 产品id
/// - orderId: 订单号
/// - money: 金额
/// - userId: 用户ID
/// - extraData: 透传数据(需要SDK返回的数据)
/// - userAgent: User-Agent
/// - success: 成功回调
/// - failure: 失败回调
+ (void)appleInPurchaseFromProductsId:(NSString *)productsId orderId:(NSString *)orderId money:(NSString *)money extraData:(NSString *)extraData userAgent:(NSString *)userAgent success:(nullable BrickComplete)success failure:(nullable BrickComplete)failure;
方法示例:
[BrickManager appleInPurchaseFromProductsId:@"product_id" orderId:@"order_id" money:@"8.00" extraData:@"" userAgent:@"" success:^(BrickCompleteResult * _Nonnull completeResult) {
BrickCompleteResult *result = completeResult;
NSInteger code = result.code;
NSString *message = result.message;
NSDictionary *data = result.data;
NSLog(@"appleSuccess:%ld-----%@----%@",(long)code,message,data);
} failure:^(BrickCompleteResult * _Nonnull completeResult) {
BrickCompleteResult *result = completeResult;
NSInteger code = result.code;
NSString *message = result.message;
NSLog(@"appleFailure:%ld-----%@",(long)code,message);
}];
3.恢复购买
success: 成功回调 failure: 失败回调
/// 恢复购买
/// - Parameters:
/// - success: 成功回调
/// - failure: 失败回调
+ (void)restoreSuccess:(nullable BrickComplete)success failure:(nullable BrickComplete)failure;
方法示例:
[BrickManager restoreSuccess:^(BrickCompleteResult * _Nonnull completeResult) {
NSLog(@"恢复购买成功");
} failure:^(BrickCompleteResult * _Nonnull completeResult) {
NSLog(@"恢复购买失败");
}];
微信支付、支付宝支付处理系统调用
1.处理登录通过URL启动App时传递的数据
url: 第三方应用时传递过来的URL
/// 处理登录通过URL启动App时传递的数据
/// - Parameter url: 第三方应用时传递过来的URL
+ (BOOL)brickPayHandleOpenURL:(NSURL *)url;
方法示例:
[BrickManager brickPayHandleOpenURL:url];
2.处理登录通过Universal Link启动App时传递的数据
userActivity: 系统API传递过来的userActivity
/// 处理登录通过Universal Link启动App时传递的数据
/// - Parameter userActivity: 系统API传递过来的userActivity
+ (BOOL)brickPayHandleOpenUniversalLink:(NSUserActivity *)userActivity;
方法示例
[BrickManager brickPayHandleOpenUniversalLink:userActivity];