Runner.SessionInfo.UpdateCustomProperties fail

I try to update NetworkRunner.SessionInfo.Properties, using 'Runner.SessionInfo.UpdateCustomProperties', but it fails always. My code looks like this:

Dictionary<string, SessionProperty> dic = new Dictionary<string, SessionProperty>();
dic["key"] = "value";
bool flag = Runner.SessionInfo.UpdateCustomProperties(dic);
Debug.Log($"update result = {flag}, IsSharedModeMasterClient = {Runner.IsSharedModeMasterClient}, " + ". MenuUI.runner-" + Runner.SessionInfo.ToString() + ", Runner.ActivePlayers.{count, tostring}= {" + Runner.ActivePlayers.Count() + ", " + Runner.ActivePlayers.Count() + "}");

And the output is :

update result = False, IsSharedModeMasterClient = True, . MenuUI.runner-[SessionInfo: IsValid=True, Name=testgame, IsOpen=True, IsVisible=True, Region=cn, PlayerCount=0, MaxPlayers=0, Properties=[MapName=map01],[Status=1],], Runner.ActivePlayers.{count, tostring}= {1, 1}


Could someone tell me what the problem is?