chore(m2): 保存功能验收及后续清理前检查点

This commit is contained in:
Liubing\LB
2026-10-10 20:40:27 +08:00
parent d3c5394a55
commit 144e7f739f
110 changed files with 12672 additions and 7514 deletions

View File

@@ -142,7 +142,9 @@ namespace game
}
};
var result = await PlayFabClientAsyncAPI.GetFriendsListAsync(getFriendsListRequest);
var result = userService is KVUserService
? await GetKVFriendsListAsync()
: await PlayFabClientAsyncAPI.GetFriendsListAsync(getFriendsListRequest);
var list = result?.Friends;
if (list != null)
{
@@ -214,6 +216,57 @@ namespace game
#endif
}
}
private async Task<GetFriendsListResult> GetKVFriendsListAsync()
{
var json = await customServerMgr.FriendRequest("GetFriendsList", new { });
if (string.IsNullOrEmpty(json))
{
return null;
}
try
{
var response = Newtonsoft.Json.JsonConvert.DeserializeObject<GetInvitedListResp>(json);
if (response == null || response.Code != 1 || response.Friends == null)
{
return null;
}
var friends = new List<FriendInfo>();
foreach (var serialized in response.Friends)
{
if (string.IsNullOrEmpty(serialized))
{
return null;
}
var item = Newtonsoft.Json.JsonConvert.DeserializeObject<KvFriendItem>(serialized);
if (item == null)
{
return null;
}
friends.Add(new FriendInfo { FriendPlayFabId = item.PlayFabId, Profile = item.Profile });
}
return new GetFriendsListResult { Friends = friends };
}
catch (Newtonsoft.Json.JsonException ex)
{
Debug.LogError("KV friends response failed: " + ex.GetType().Name);
return null;
}
}
private sealed class KvFriendItem
{
public string PlayFabId
{
get;
set;
}
public PlayerProfileModel Profile
{
get;
set;
}
}
#endregion
#region 邀请好友