1.x 升级 3.x 指南
因新版接口与旧版接口有明显差别,所以需将旧版接口删除,通过如下方式重新接入以便使用新版本接口。
TapSDK 3.x 版本的导入
去除 1.x 方式导入的 SDK 相关包和文件,引入 3.x SDK,详情请参考项目配置。
初始化
该接口应尽早并在调用 TapSDK 的其他接口前调用,示例如下:
- Unity
- Android
- iOS
TapLogin.Init(string clientID);
参数说明
参数 | 描述 |
---|---|
clientID | TapTap 开发者中心对应应用的 Client ID |
LoginSdkConfig loginSdkConfig = new LoginSdkConfig(true, true, RegionType.CN);
TapLoginHelper.init(Context context, String clientID, LoginSdkConfig config);
参数说明
参数 | 描述 |
---|---|
context | 上下文 |
clientID | TapTap 开发者中心对应应用的 Client ID |
config | TapSDK 初始化相关配置 |
[TapLoginHelper initWithClientID:@"your clientId"];
参数说明
参数 | 描述 |
---|---|
clientId | TapTap 开发者中心对应应用的 Client ID |
TapTap 登录并获取登录结果
- Unity
- Android
- iOS
// 唤起 TapTap 网页 或者 TapTap 客户端进行登录
try{
//登录成功
var loginTask = TapLogin.Login();
var accessToken = await loginTask;
if(loginTask.IsCanceled){
// 登录取消
}
if(accessToken !=null){
// 登录成功
}
}catch(Exception e){
//TODO 登录失败
if(e is TapException tapError){
Debug.Log($"code:{tapError.code} message:{tapError.message}")
}
}
// 获取 TapTap Profile 可以获得当前用户的一些基本信息,例如名称、头像。
var profile = await TapLogin.FetchProfile();
// 补充: 通过 profile 获取用户的:昵称、头像、唯一标识 查看
profile.name
profile.avatar
profile.openId
profile.unionid
TapLoginHelper.TapLoginResultCallback loginCallback = new TapLoginHelper.TapLoginResultCallback() {
@Override
public void onLoginSuccess(AccessToken token) {
Log.d(TAG, "TapTap authorization succeed");
// 开发者调用 TapLoginHelper.getCurrentProfile() 可以获得当前用户的一些基本信息,例如名称、头像。
Profile profile = TapLoginHelper.getCurrentProfile();
}
@Override
public void onLoginCancel() {
Log.d(TAG, "TapTap authorization cancelled");
}
@Override
public void onLoginError(AccountGlobalError globalError) {
Log.d(TAG, "TapTap authorization failed. cause: " + globalError.getMessage());
}
};
TapLoginHelper.registerLoginCallback(loginCallback);
TapLoginHelper.startTapLogin(MainActivity.this, TapLoginHelper.SCOPE_PUBLIC_PROFILE);
[TapLoginHelper registerLoginResultDelegate:delegator];
if ([TapLoginHelper currentProfile]) {
// 当前已经登录
} else {
[TapLoginHelper startTapLogin:@[@"public_profile"]];
}
// delegator
- (void)onLoginCancel {
// 登录取消
}
- (void)onLoginError:(nonnull NSError *)error {
// 登录失败
}
- (void)onLoginSuccess:(nonnull TTSDKAccessToken *)token {
// 登录成功
}