法1. 通过cocoapod导入,基本上没什么问题
请先添加百川的源
pod repo add AliBCSpecs http://repo.baichuan-ios.taobao.com/baichuanSDK/AliBCSpecs.git
然后在你工程的Podfile添加(具体版本以百川开发者网站为准)
source 'http://repo.baichuan-ios.taobao.com/baichuanSDK/AliBCSpecs.git'
pod 'AlibcTradeSDK'
source 'https://github.com/CocoaPods/Specs.git'
pod 'AFNetworking', '~> 3.1.0'
法2. 下载官网SDK
- 导入下载的SDK
- 和id对应的 安全图片
yw_1222.jpg
,请勿修改文件名 - 添加以下基础库
Other Linker flags 添加
-
配置URL Types URL Scheme为tbopen{AppKey},如tbopen123456
-
配置info.plist
1.在info.plist中,增加LSApplicationQueriesSchemes字段,并添加tbopen,tmall
2.配置ATS, 允许HTTP请求
初始化 添加回调代理方法
没添加报错如下
Error Domain=AlibabaAuthSDK Code=104 "TB_BACK_WITHOUT_AUTH" UserInfo={NSLocalizedDescription=TB_BACK_WITHOUT_AUTH}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
// 外部使用只能用Release环境
[[AlibcTradeSDK sharedInstance] setEnv:AlibcEnvironmentRelease];
// 百川平台基础SDK初始化,加载并初始化各个业务能力插件
// NSString *appKey = @"23082328";
[[AlibcTradeSDK sharedInstance] asyncInitWithSuccess:^{
} failure:^(NSError *error) {
}];
#warning 初始化时候, 在log中确认 AlibcTradeSDK 资源/环境检查 , 确保配置完成
// 开发阶段打开日志开关,方便排查错误信息
[[AlibcTradeSDK sharedInstance] setDebugLogOpen:YES];
return YES;
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{
/* 老接口写法 已弃用,建议使用新接口
if (![[AlibcTradeSDK sharedInstance] handleOpenURL:url]) {
// 处理其他app跳转到自己的app
}
return YES;
*/
// 新接口写法
if (![[AlibcTradeSDK sharedInstance] application:application
openURL:url
sourceApplication:sourceApplication
annotation:annotation]) {
// 处理其他app跳转到自己的app
}
return YES;
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options {
// //老接口写法 已弃用,建议使用新接口
// if (![[AlibcTradeSDK sharedInstance] handleOpenURL:url]) {
// //处理其他app跳转到自己的app
// }
// return YES;
// 新接口写法
if (![[AlibcTradeSDK sharedInstance] application:application
openURL:url
options:options]) {
//处理其他app跳转到自己的app,如果百川处理过会返回YES
}
return YES;
}