45 lines
1.6 KiB
C#
45 lines
1.6 KiB
C#
|
|
#if UNITY_WEBGL && WEBGL_WX
|
|||
|
|
|
|||
|
|
using System;
|
|||
|
|
using System.Collections.Generic;
|
|||
|
|
using WeChatWASM;
|
|||
|
|
|
|||
|
|
namespace HC
|
|||
|
|
{
|
|||
|
|
public class HCWXAccount : HCIAccount
|
|||
|
|
{
|
|||
|
|
public void Login(Action<HCLoginResult> action)
|
|||
|
|
{
|
|||
|
|
HCDebugger.LogDebug("[HCWXAccount] [Login] Start");
|
|||
|
|
WX.Login(new LoginOption
|
|||
|
|
{
|
|||
|
|
complete = generalCallbackResult => { HCDebugger.LogDebug($"[HCWXAccount] [Login] complete {generalCallbackResult.errMsg}"); },
|
|||
|
|
fail = err =>
|
|||
|
|
{
|
|||
|
|
HCDebugger.LogDebug($"[HCWXAccount] [Login] fail {err.errMsg} {err.errno}");
|
|||
|
|
action?.Invoke(new HCLoginResult
|
|||
|
|
{
|
|||
|
|
code = -1,
|
|||
|
|
msg = err.errMsg
|
|||
|
|
});
|
|||
|
|
},
|
|||
|
|
success = result =>
|
|||
|
|
{
|
|||
|
|
// 用户登录凭证(有效期五分钟)。开发者需要在开发者服务器后台调用 code2Session,使用 code 换取 openid、unionid、session_key 等信息
|
|||
|
|
var resultCode = result.code;
|
|||
|
|
var resultErrMsg = result.errMsg;
|
|||
|
|
HCDebugger.LogDebug($"[HCWXAccount] [Login] success result code = {resultCode} result err msg = {resultErrMsg}");
|
|||
|
|
action?.Invoke(new HCLoginResult()
|
|||
|
|
{
|
|||
|
|
code = 0,
|
|||
|
|
token = resultCode,
|
|||
|
|
userId = resultCode,
|
|||
|
|
ext = new Dictionary<string, object>()
|
|||
|
|
});
|
|||
|
|
},
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
#endif
|