一、初始化SDK
在 AppDelegate 中初始化SDK
// 百川平臺(tái)基礎(chǔ)SDK初始化,加載并初始化各個(gè)業(yè)務(wù)能力插件
[[AlibcTradeSDK sharedInstance] asyncInitWithSuccess:^{
} failure:^(NSError *error) {
NSLog(@"Init failed: %@", error.description);
}];
// 開發(fā)階段打開日志開關(guān),方便排查錯(cuò)誤信息
//默認(rèn)調(diào)試模式打開日志,release關(guān)閉,可以不調(diào)用下面的函數(shù)
[[AlibcTradeSDK sharedInstance] setDebugLogOpen:YES];
// 配置全局的淘客參數(shù)
//如果沒有阿里媽媽的淘客賬號(hào),setTaokeParams函數(shù)需要調(diào)用
AlibcTradeTaokeParams *taokeParams = [[AlibcTradeTaokeParams alloc] init];
taokeParams.pid = @"mm_XXXXX"; //mm_XXXXX為你自己申請(qǐng)的阿里媽媽淘客pid,一定得填寫,不然無法初始化
[[AlibcTradeSDK sharedInstance] setTaokeParams:taokeParams];
//設(shè)置全局的app標(biāo)識(shí),在電商模塊里等同于isv_code
//沒有申請(qǐng)過isv_code的接入方,默認(rèn)不需要調(diào)用該函數(shù)
// [[AlibcTradeSDK sharedInstance] setISVCode:@"your_isv_code"];
// 設(shè)置全局配置,是否強(qiáng)制使用h5
[[AlibcTradeSDK sharedInstance] setIsForceH5:YES];
二、處理應(yīng)用跳轉(zhuǎn)
為了正常使用百川內(nèi)置的應(yīng)用跳轉(zhuǎn)處理,需要調(diào)用百川SDK的方法。建議優(yōu)先調(diào)用百川處理,如果百川已處理,可以直接返回YES;當(dāng)然,也可以繼續(xù)處理,比如記錄應(yīng)用跳轉(zhuǎn)來源日志等。
以下代碼不現(xiàn)實(shí),會(huì)導(dǎo)致通過手淘授權(quán)登陸,跳回來沒反應(yīng)等問題
在- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options {}實(shí)現(xiàn)如下代碼:
/* 老接口寫法 已棄用,建議使用新接口
if (![[AlibcTradeSDK sharedInstance] handleOpenURL:url]) {
// 處理其他app跳轉(zhuǎn)到自己的app
}
return YES;
*/
//新接口寫法
if (![[AlibcTradeSDK sharedInstance] application:application
openURL:url
options:options]) {
//處理其他app跳轉(zhuǎn)到自己的app,如果百川處理過會(huì)返回YES
}
iOS9+的新系統(tǒng)API
/ 老接口寫法 已棄用,建議使用新接口
if (![[AlibcTradeSDK sharedInstance] handleOpenURL:url]) {
// 處理其他app跳轉(zhuǎn)到自己的app
}
return YES;
*/
// 新接口寫法
if (![[AlibcTradeSDK sharedInstance] application:application
openURL:url
sourceApplication:sourceApplication
annotation:annotation]) {
// 處理其他app跳轉(zhuǎn)到自己的app
}
return YES
三、設(shè)置接口說明
*初始化SDK相關(guān)接口
初始化百川電商相關(guān)組件,該方法異步執(zhí)行,使用百川電商相關(guān)功能前,必須調(diào)用初始化。
/**
* 百川電商SDK初始化【異步】
*/
- (void)asyncInitWithSuccess:(void (^)())onSuccess failure:(void (^)(NSError *error))onFailure;
*設(shè)置SDK API調(diào)用默認(rèn)方式
/**
* 是否走強(qiáng)制H5的邏輯。NO:按照默認(rèn)規(guī)則策略打開頁面;YES:全部頁面均為H5打開;
* 注意:初始化完成后調(diào)用才能生效
*
* @param isforceH5 (默認(rèn)為NO)
*/
- (void) setIsForceH5(BOOL isforceH5)
*設(shè)置SDK 淘客打點(diǎn)策略
/**
* 設(shè)置是否使用同步淘客打點(diǎn)。YES:使用淘客同步打點(diǎn);NO:關(guān)閉同步打點(diǎn),使用異步打點(diǎn);
* 注意:初始化完成后調(diào)用才能生效;一般不需要特別設(shè)置,保持默認(rèn)值即可
*
* @param isSyncForTaoke(默認(rèn)為YES)
*/
- (void)setSyncForTaoke(BOOL isSyncForTaoke)
*設(shè)置淘客全局參數(shù)
/**
* 設(shè)置全局淘客參數(shù),方便開發(fā)者用同一個(gè)淘客參數(shù),不需要在show接口重復(fù)傳入
* 注意:初始化完成后調(diào)用才能生效
*
* @param taokeParams 淘客參數(shù)
*/
- (void)setTaokeParams(AliTradeTaokeParams taokeParams)
*設(shè)置渠道信息
/**
* 設(shè)置渠道信息(如果有渠道專享價(jià),需要設(shè)置)
* 注意:初始化完成后調(diào)用才能生效
*
* @param typeName : 渠道類型(默認(rèn)為:0)
* @param channelName : 渠道名稱(默認(rèn)為:null)
*/
- (void)setChannel(NSString* typeName, NSString* channelName)
*設(shè)置isv 版本
/**
* 設(shè)置isv的版本 ,通常為三方app版本,可以不進(jìn)行設(shè)置;默認(rèn)1.0.0
* 注意:初始化完成后調(diào)用才能生效
*
* @param isvVersion
*/
- (void)setISVVersion(NSString* isvVersion)