Files
ifish/Ifish/AlibcTradeSDK-3.1.1.96/Frameworks/AlibcLinkPartnerSDK.framework/Headers/ALPTBLinkPartnerSDK.h
T

147 lines
3.6 KiB
Objective-C

//
// ALPTBLinkPartnerSDK.h
// ALPLinkPartnerSDK
//
// Created by czp on 16/10/10.
// Copyright © 2016年 czp. All rights reserved.
//
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#import "ALPTBShopParam.h"
#import "ALPTBDetailParam.h"
#import "ALPTBAuthParam.h"
#import "ALPTBURIParam.h"
#import "ALPJumpFailedStrategy.h"
#define ALPSDKVersion @"1.1.0.9"
typedef NS_ENUM(NSInteger, ALPOpenType) {
ALPOpenTypeNative, //跳转native打开
ALPOpenTypeH5, //H5打开
ALPOpenTypeBrowser //浏览器打开
};
typedef NS_ENUM(NSInteger, ALPConfigEnv) {
ALPConfigEnvNone = -1,//未定义环境
ALPConfigEnvRelease = 0,//线上环境
ALPConfigEnvDaily, //测试环境
ALPConfigEnvPreRelease, //预发环境
};
@interface ALPTBLinkPartnerSDK : NSObject
/**
* 初始化SDK,必须初始化SDK不然后续跳转操作将报错
*
* @param appKey 必传参数
*/
+ (void)initWithAppkey:(nonnull NSString *)appKey;
/**
* 设置debug模式打开,会有log输出
*
* @param on 是否打开
*/
+ (void)setDebugOn:(BOOL)on;
/**
* 设置开发环境,默认线上环境
*
* @param env 开发环境
*/
+ (void)setEnv:(ALPConfigEnv)env;
/**
* 设置打开页面的类型
*
* @param type 类型
*/
+ (void)setOpenType:(ALPOpenType)type;
/**
* 设置业务追踪id,仅供二方使用,其他接入无需关心
*
* @param ttid
*/
+ (void)setTTID:(nonnull NSString *)ttid;
/**
* 授权登录时必传
*
* @param authSecret 百川平台appSecret
*/
+ (void)setAuthSecret:(nonnull NSString *)authSecret;
/**
* 跳转到店铺页
*
* @param param 店铺的配置参数
* @param strategy 跳转失败时处理策略,不传,默认h5页面打开
*
* @return 错误信息
*/
+ (nullable ALPError *)jumpShop:(nonnull ALPTBShopParam *)param
failedStrategy:(nullable ALPJumpFailedStrategy *)strategy;
/**
* 跳转到商品详情页
*
* @param param 商品详情的配置参数
* @param strategy 跳转失败时处理策略,不传,默认h5页面打开
*
* @return 错误信息
*/
+ (nullable ALPError *)jumpDetail:(nonnull ALPTBDetailParam *)param
failedStrategy:(nullable ALPJumpFailedStrategy *)strategy;
/**
* 根据URI跳转,以webView的形式打开
*
* @param param URI的配置参数
* @param strategy 跳转失败时处理策略,不传,默认h5页面打开
*
* @return 错误信息
*/
+ (nullable ALPError *)jumpURI:(nonnull ALPTBURIParam *)param
failedStrategy:(nullable ALPJumpFailedStrategy *)strategy;
/**
* 授权
*
* @param param 授权参数,只支持淘宝授权登录,linkkey为kTaobaoLinkKey
* 天猫不支持授权登录
*
* @return 错误信息
*/
+ (nullable ALPError *)doAuth:(nonnull ALPTBAuthParam *)param;
/**
* 跳转失败,是否支持默认打开手淘
*
* @param isSupport 是否支持
*/
+ (void)setSupportJumpFailedOpenTaobao:(BOOL)isSupport;
/**
* 处理linkPartner返回结果,需要在AppDelegate的[application:(UIApplication)app handleOpenURL:(NSURL*)url]中添加
*
* @param url 跳入打开APP的URL
* @param sourceApplication 来源APP sourceApplication
*
* @return 是否处理该url
*/
+ (BOOL)handleOpenURL:(nonnull NSURL *)url sourceApplication:(nullable NSString *)sourceApplication;
/**
* 检查是否能打开指定APP
*
* @param linkKey 根据对应对应常量字符串来设定(kTaobaoLinkKey,kTmallLinkKey)
*
* @return 是否能打开APP
*/
+ (BOOL)canOpenApp:(nullable NSString*)linkKey;
@end