using System; using System.Collections.Generic; using System.Threading.Tasks; using Fort23.Core; using TapSDK.Core; using TapSDK.Login; using UnityEngine; using Utility; namespace GameMono { public class TapSDKManager : Singleton { public string clientId = "bsmst6kdocd7ph13a0"; public string clientToken = "M4cSc0L6PAGDrgFFvtWqu6ewzNYxNYjghckWlwHs"; public void CustomInit() { TapTapSdkOptions coreOptions = new TapTapSdkOptions { // 客户端 ID,开发者后台获取 clientId = clientId, // 客户端令牌,开发者后台获取 clientToken = clientToken, // 地区,CN 为国内,Overseas 为海外 region = TapTapRegionType.CN, // 语言,默认为 Auto,默认情况下,国内为 zh_Hans,海外为 en preferredLanguage = TapTapLanguageType.zh_Hans, // 是否开启日志,Release 版本请设置为 false enableLog = true }; // // TapSDK 初始化 // TapTapSDK.Init(coreOptions); // 当需要添加其他模块的初始化配置项,例如合规认证、成就等, 请使用如下 API TapTapSdkBaseOptions[] otherOptions = new TapTapSdkBaseOptions[] { // 其他模块配置项 }; TapTapSDK.Init(coreOptions, otherOptions); } public async CTask Login() { CTask cTask = CTask.Create(); try { // 定义授权范围 List scopes = new List { TapTapLogin.TAP_LOGIN_SCOPE_PUBLIC_PROFILE }; // 发起 Tap 登录 var userInfo = await TapTapLogin.Instance.LoginWithScopes(scopes.ToArray()); cTask.SetResult(true); // HudPanel.ShowTipsCom($"登录成功,当前用户 ID:{userInfo.unionId}"); Debug.Log($"登录成功,当前用户 ID:{userInfo.unionId}"); } catch (TaskCanceledException) { cTask.SetResult(false); // HudPanel.ShowTipsCom("用户取消登录"); Debug.Log("用户取消登录"); } catch (Exception exception) { // HudPanel.ShowTipsCom($"登录失败,出现异常:{exception}"); Debug.Log($"登录失败,出现异常:{exception}"); } return await cTask; } public void LogOut() { TapTapLogin.Instance.Logout(); } } }