我正在使用 BaseGameActivity 和示例 Button Clicker 2000 来开发我的多人游戏,我在创建一个房间时遇到了麻烦..
房间就是这样创造的:
Bundle autoMatchCriteria = RoomConfig.createAutoMatchCriteria(1, 3, 0);
RoomConfig.Builder rtmConfigBuilder = RoomConfig.builder(this);
rtmConfigBuilder.setMessageReceivedListener(this);
rtmConfigBuilder.setRoomStatusUpdateListener(this);
rtmConfigBuilder.setAutoMatchCriteria(autoMatchCriteria);
然后:getGamesClient().createRoom(rtmConfigBuilder.build());
一切似乎都没问题,因为调用 onRoomCreated()方法,我可以获得romm id等。
但是,永远不会调用 connectedToRoom()方法!
创建房间后,我只需切换到另一个Fragment
(我的游戏基于单个Activity
和多个Fragment
)作为等候室,我在其中显示参与者的姓名,图标等
当我按下后退按钮时,我切换回主屏幕(另一个Fragment
),这是应该发生的事情:
if (mRoomId != null) {
getGamesClient().leaveRoom(this, mRoomId);
mRoomId = null;
我无法离开我要连接的房间( mRoomId 为空,因为我没有打电话给 connectedToRoom(),我获得房间ID )
那么我缺少什么?我在谷歌播放服务教程中找不到答案..