在客户端集成百川SDK之前,需要完成以下准备工作:
1. 入驻百川,创建应用,点击这里入驻。
2. 下载客户端SDK,点击下载AppLink SDK。
下载完成后,将SDK包中的jar文件添加到你的工程依赖中。
用于App间的跳转,下面会介绍到
在Xcode中注册URL Scheme(如下图所示)(名字自选,“TBAppLinkSDK”仅为示例)
备注
测试需要手淘app联合完成,请更新手机淘宝App完成测试。
调用入口类-[ALBBSDK asyncInit:failedCallback:]进行初始化。
@implementation AppDelegate - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { [[ALBBSDK sharedInstance] asyncInit:^{ NSLog(@"success"); } failedCallback:^(NSError *error) { NSLog(@"failure : %@", error); }]; return YES; } @end
通过ALBBService宏或-[ALBBSDK getService:]获取ALBBAppLinkService调用相应的功能:
- (void)jumpToShopWithShopID:(NSString *)shopID { [ALBBService(ALBBAppLinkService) jumpShop:shopID params:@{ALBBAppLinkParamISVCode : @"<#your code#>"}]; }
接口:
/** 跳转到店铺 @param shopID 店铺ID @return 跳转是否成功 */ - (BOOL)jumpShop:(NSString *)shopID; /** 跳转到店铺 @param shopID 店铺ID @param params 键值对自定义参数, 如ALBBAppLinkParamISVCode、ALBBAppLinkParamPID. @return 跳转是否成功 */ - (BOOL)jumpShop:(NSString *)shopID params:(NSDictionary<NSString*, NSString*> *)params;
示例:
[ALBBService(ALBBAppLinkService) jumpShop:@"<#Shop ID#>" params:@{ALBBAppLinkParamISVCode : @"<#ISV Code#>"}];
接口:
/** 跳转到详情 @param itemID 商品ID @return 跳转是否成功 */ - (BOOL)jumpDetail:(NSString *)itemID; /** 跳转到详情 @param itemID 商品ID @param params 键值对自定义参数, 如ALBBAppLinkParamISVCode、ALBBAppLinkParamPID. @return 跳转是否成功 */ - (BOOL)jumpDetail:(NSString *)itemID params:(NSDictionary<NSString*, NSString*> *)params;
示例:
[ALBBService(ALBBAppLinkService) jumpDetail:@"<#Item ID#>" params:@{ALBBAppLinkParamPID : @"<#Taoke ID#>"}];
接口:
/** 跳转到任意淘宝URI @param URI 淘宝URI @return 跳转是否成功 */ - (BOOL)jumpTBURI:(NSString *)URI; /** 跳转到任意淘宝URI @param URI 淘宝URI @param params 键值对自定义参数, 如ALBBAppLinkParamISVCode、ALBBAppLinkParamPID. @return 跳转是否成功 */ - (BOOL)jumpTBURI:(NSString *)URI params:(NSDictionary<NSString*, NSString*> *)params;
示例:
[ALBBService(ALBBAppLinkService) jumpTBURI:@"https://www.taobao.com/"];
接口:
objc /** 处理appLink返回结果, 需要在AppDelegate的 [application:(UIApplication)app handleOpenURL:(NSURL*)url]中添加. @param url 待处理的URL @return 是否已处理 */ - (BOOL)handleOpenURL:(NSURL *)url;
示例:
objc - (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url { if ([ALBBService(ALBBAppLinkService) handleOpenURL:url]) return YES; BOOL result = /* your handle logic */ return result; }
params 为选填字段。
参数key | 说明 |
---|---|
ALBBAppLinkParamISVCode | 自定义ISVCode,用于订单跟踪。 |
ALBBAppLinkParamPID | PID,淘客埋点参数。 |