BDNCashierSDKBaifubaoService.h
1.94 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
//
// BDNCashierSDKBaifubaoService.h
// BainuoCashierPaySDK
//
// Created by Jack on 2019/7/31.
// Copyright © 2019 Baidu. All rights reserved.
//
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
@protocol BDNCashierSDKPaymentServiceProtocol;
@protocol BDNCashierSDKBaifubaoDelegate;
@interface BDNCashierSDKBaifubaoService : NSObject<BDNCashierSDKPaymentServiceProtocol>
/**
* @brief 返回默认支付能力
*
* @return 单例,百付宝支付能力
*/
+ (instancetype)defaultService;
/**
* @brief 注册代理
*
* @param delegate 实现协议BDNCashierSDKBaifubaoDelegate的代理
*/
- (void)registerDelegate:(id<BDNCashierSDKBaifubaoDelegate>)delegate;
/**
* @brief 设置度小满调起时的rootViewController
* @note 用于度小满接口:[[BDWalletSDKMainManager getInstance] setRootViewController:rootViewController]
*
* @param vc 承载度小满页面的VC
*/
- (void)setBDWalletRootVC:(UIViewController *)vc;
@end
@protocol BDWalletSDKMainManagerDelegate;
@protocol BDNCashierSDKBaifubaoDelegate <NSObject>
typedef void(^BDNCashierSDKBaifubaoPaymentCallback)(NSInteger code, NSString *desc);
/**
* @brief 定制能力,获取宿主实现的BDWalletSDKMainManagerDelegate,等待宿主告知支付结果
*
* @note case 1: 如果你集成了公开版的百度钱包SDK,且不关心如何处理其支付回调,请不要实现此方法;case 2: 如果你集成了定制版的百度钱包SDK,比如需要替百度钱包实现登录能力
* @param callback 宿主告知支付结果的回调(`code`请参照BDNCashierPaymentRespCode) BDWalletSDKMainManagerDelegate中支付回调接口`- (void)BDWalletPayResultWithCode:(int)statusCode payDesc:(NSString *)payDescs;`的Bridge
* @return 宿主App自行实现的BDWalletSDKMainManagerDelegate(⚠️注意:需要是viewController类型)
*/
- (id<BDWalletSDKMainManagerDelegate>)bridgeBDWalletDelegateWithPayCallback:(BDNCashierSDKBaifubaoPaymentCallback)callback;
@end