Room.getParticipants()只返回一个参与者

时间:2014-04-17 18:19:36

标签: google-play-services multiplayer google-play-games

即使2名玩家开始游戏,Room.getParticipants()方法是否有可能仅返回1名参与者?

我想我有这个错误,我需要参与者知道彼此的ID。我注意到Room API在网站上甚至没有这个方法: https://developer.android.com/reference/com/google/android/gms/games/multiplayer/realtime/Room.html#getParticipantIds()

我应该使用其他方法吗?我想让一个参与者知道另一个参与者,反之亦然(至少是他们的身份)。

2 个答案:

答案 0 :(得分:0)

如果您正在处理回合制多人游戏,则会有一个答案HERE

participantID似乎在当前比赛中保持一致,但并非在所有比赛(或更确切地说是房间)中保持一致。

我目前正在尝试调试自己的实时多人游戏应用,所以我还是新手。

答案 1 :(得分:0)

我在创建Room实例后(在onRoomCreated()侦听器方法中)保存了这个问题。而不是这个,你应该在连接后保存Room实例,即在onRoomConnected()方法中:

//Room instance var
private Room mRoom;

//method of RoomUpdateListener
@Override
public void onRoomConnected(int i, Room room)
{   
    mRoom = room;
    ...
}

// get partcipants after rom is connected will return have the right size
mRoom.getParticipants()