账号个人信息(GUAAccountProfile)[仅限 Player Network SDK]
数据结构
- Unity
- Unreal Engine
注意
账号回调信息 GUAAccountResult 成员变量 Profile
包含了账号个人信息。
GUAAccountProfile
: 账号个人信息。
参数 | 类型 | 说明 |
---|---|---|
UserName | string | 用户名,必须以字母开头,只包含小写字母 (从 a 到 z),下划线 (_) 和数字 (从0 到 9)。它的长度可以是 6 到 16 个字母。 |
Birthday | string | 用户出生日期,如果填写非法,生日年默认为 1970-01-01 |
BirthdayYear | int32 | 用户生日的年份,如果填写非法,生日年默认为 1970 |
BirthdayMonth | int32 | 用户生日的月份,如果填写非法,生日月默认为 1 |
BirthdayDay | int32 | 用户生日的日子,如果填写非法,生日日默认为 1 |
IsReceiveEmail | int | 是否接收营销邮件,默认为 0 |
Region | string | ISO 3166-1 国家或地区的数字代码 例如 156 代表中国,040 代表奥地利 |
LangType | string | 语言类型 (RFC 4646), ,例如 "en",详情请参见 语言类型定义。 |
ExtraJson | string | 额外参数(json格式) |
string | 邮件地址 | |
Phone | string | 电话号码 |
PhoneAreaCode | string | 手机区号 |
AccountType | string | 账号类型 |
NickName | string | 昵称 |
UsernamePassVerify | string | 验证码 |
注意
账号个人信息包含于(GUAAccountResult)GUABaseResult ExtraJson
拓展字段中。
GUAAccountProfile
: 账号个人信息。
参数 | 类型 | 说明 |
---|---|---|
user_name | std::string | 用户名,必须以字母开头,只包含小写字母 (从 a 到 z),下划线 (_) 和数字 (从0 到 9)。它的长度可以是 6 到 16 个字母。 |
birthday | std::string | 用户出生日期,如果填写非法,生日年默认为 1970-01-01 |
is_receive_email | int32 | 是否接收营销邮件,默认为 0 |
region | std::string | ISO 3166-1 Alpha 3 国家或地区的数字代码 例如 156 代表中国,040 代表奥地利 |
lang_type | std::string | 语言类型 (RFC 4646), ,例如 "en",详情请参见 语言类型定义。 |
extra_json | std::string | 额外参数(json格式) |
代码示例
- Unity
- Unreal Engine
账号回调信息 GUAAccountResult 成员变量 Profile
包含了账号个人信息。
public static GUAAccountResult ConvertToGUA(INTLAccountResult ret)
{
if (ret == null) return null;
GUAAccountResult accountResult = new GUAAccountResult();
accountResult.ChannelID = ret.ChannelID;
accountResult.Channel = ret.Token;
accountResult.SeqID = ret.SeqID;
accountResult.Username = ret.Username;
accountResult.Uid = ret.Uid;
accountResult.Token = ret.Token;
accountResult.Expiretime = ret.Expiretime;
accountResult.IsRegister = ret.IsRegister;
accountResult.IsSetPassword = ret.IsSetPassword;
accountResult.IsReceiveEmail = ret.IsReceiveEmail;
accountResult.VerifyCodeExpireTime = (int)ret.VerifyCodeExpireTime;
accountResult.CanBind = ret.CanBind;
accountResult.IsUserNameAvailable = ret.IsUserNameAvailable;
accountResult.Profile = ConvertToGUA(ret.Profile);
ConvertToGUA(ret, accountResult);
return accountResult;
}
账号个人信息包含于(GUAAccountResult)GUABaseResult ExtraJson
拓展字段中。
// accountResult 为账号回调信息
void OnAccountResultNotify(const AccountResult &account_result)
{
TSharedPtr<FJsonObject> json;
TSharedRef<TJsonReader<TCHAR>> jsonReader = TJsonReaderFactory<TCHAR>::Create(accountResult.ExtraJson);
if(FJsonSerializer::Deserialize(jsonReader, json))
{
GUAAccountProfile profile;
profile.user_name = json->GetStringField("user_name");
profile.birthday = json->GetStringField("birthday");
profile.is_receive_email = json->GetIntegerField("is_receive_email");
profile.region = json->GetStringField("region");
profile.lang_type = json->GetStringField("lang_type");
profile.extra_json = json->GetStringField("extra_json");
}
}