单实例类,用于管理 SDK 的核心功能
| 成员 | 描述 |
|---|---|
| Instance | 获取 AJClient 的单例实例。如果实例不存在,则会创建一个新的实例。 |
| OnSdkInited | SDK 初始化完成后触发的事件 |
| OnRunInfoChanged | 当 SDK 运行信息变化时触发的事件 |
| OnError | 当 SDK 运行出现错误时触发的事件 |
| Init | 初始化 SDK |
| Dispose | 销毁 SDK |
| SendSms | 发送手机验证码 |
| LoginByPhone | 使用手机号+验证码登录 |
| LoginByUserName | 使用用户名或手机号+密码登录 |
| LoginByUserToken | 使用本地缓存的Cookie(登录令牌)进行登录 |
| UpdatePassword | 修改用户密码 |
| GetCacheInfo | 获取本地缓存的用户登录信息。 |
获取 AJClient 的单例实例。如果实例不存在,则会创建一个新的实例。后续方法调用模式如下:
xxxxxxxxxxAJClient.Instance.具体的成员名称SDK 初始化完成后触发的事件
xxxxxxxxxxpublic event CommonHandle OnSdkInited;xxxxxxxxxxAJClient.Instance.OnSdkInited += () =>{ Console.WriteLine("SDK初始化完成");};当 SDK 运行信息变化时触发的事件
xxxxxxxxxx public event CommonInfoHandle OnRunInfoChanged;xxxxxxxxxxAJClient.Instance.OnRunInfoChanged += (args) =>{ Console.WriteLine(args);};当 SDK 运行出现错误时触发的事件
xxxxxxxxxxpublic event ErrorInfoHandle OnError;xxxxxxxxxxAJClient.Instance.OnError += (ex) =>{ Console.WriteLine($"AJSDK错误:{ex.Message}"); Console.WriteLine(ex.InnerException?.Message);};初始化 SDK,接受 ApiOptions 参数用于配置 SDK。初始化过程中会加载登录缓存信息,如果发送成功,返回 true,并触发OnSdkInited事件;否则返回 false,。
xxxxxxxxxxpublic bool Init(ApiOptions options)xxxxxxxxxxApiOptions options = new ApiOptions("你的API访问ID", "你的API访问密钥");AJClient.Instance.Init(options);发送手机验证码,验证码有效期为 15 分钟。如果发送成功,返回 true;否则返回 false,并触发 OnError 事件。
xxxxxxxxxxpublic async Task<bool> SendSms(string phonenumber)xxxxxxxxxxbool smsSent = await AJClient.Instance.SendSms("用户手机号"); 手机号+验证码登录,返回登录信息对象LoginInfo,包括用户名、手机号、用户令牌等。登录失败返回 null 并触发 OnError 事件。
xxxxxxxxxxpublic async Task<LoginInfo> LoginByPhone(string phonenumber, string vcode)xxxxxxxxxxLoginInfo loginInfo = await AJClient.Instance.LoginByPhone("手机号", "验证码"); 用户名/手机号+密码登录,返回登录信息对象LoginInfo,包括用户名、手机号、用户令牌等。登录失败返回 null 并触发 OnError 事件。
xxxxxxxxxxpublic async Task<LoginInfo> LoginByUserName(string username, string password)xxxxxxxxxxLoginInfo loginInfo = await AJClient.Instance.LoginByUserName("用户名或手机号", "密码"); 本地Cookie登录,返回登录信息对象LoginInfo,包括用户名、手机号、用户令牌等。登录失败返回 null 并触发 OnError 事件。
xxxxxxxxxxpublic async Task<LoginInfo> LoginByUserToken(string token)xxxxxxxxxxLoginInfo loginInfo = await AJClient.Instance.LoginByUserToken("登录令牌");修改密码,成功返回 true,失败返回 false 并触发 OnError 事件。
xxxxxxxxxxpublic async Task<bool> UpdatePassword(string username, string password)xxxxxxxxxxbool pwdUpdated = await AJClient.Instance.UpdatePassword("用户名", "新密码");获取本地缓存的用户登录信息,成功返回一个缓存信息对象 CacheInfo,失败返回null
xxxxxxxxxxpublic CacheInfo GetCacheInfo()xxxxxxxxxxCacheInfo cacheInfo = AJClient.Instance.GetCacheInfo();