updateUserInfo method
Modifies the user attributes of the current user.
Param nickname
The nickname of the user.
Param avatarUrl
The avatar URL of the user.
Param mail
The email address of the user.
Param phone
The phone number of the user.
Param gender
The gender of the user. The value can only be 0
, 1
, or 2
. Other values are invalid.
0
: (Default) Unknown;1
: Male;2
: Female. Paramsign
The signature of the user.
Param birth
The birthday of the user.
Param ext
The custom extension information of the user. You can set it to an empty string or type custom information and encapsulate them as a JSON string.
Return The user info.
Throws A description of the exception. See ChatError.
Implementation
Future<ChatUserInfo> updateUserInfo({
String? nickname,
String? avatarUrl,
String? mail,
String? phone,
int? gender,
String? sign,
String? birth,
String? ext,
}) async {
Map req = {};
req.putIfNotNull("nickName", nickname);
req.putIfNotNull("avatarUrl", avatarUrl);
req.putIfNotNull("mail", mail);
req.putIfNotNull("phone", phone);
req.putIfNotNull("gender", gender);
req.putIfNotNull("sign", sign);
req.putIfNotNull("birth", birth);
req.putIfNotNull("ext", ext);
try {
Map result =
await _channel.invokeMethod(ChatMethodKeys.updateOwnUserInfo, req);
ChatError.hasErrorFromResult(result);
ChatUserInfo info =
ChatUserInfo.fromJson(result[ChatMethodKeys.updateOwnUserInfo]);
_effectiveUserInfoMap[info.userId] = info;
return info;
} on ChatError catch (e) {
throw e;
}
}