我正在创建一个RealTime多人游戏,在等待室活动开始后,活动立即结束,结果代码为10001(GamesActivityResultCodes.RESULT_RECONNECT_REQUIRED)
这种行为很奇怪,因为房间仍在创建,如果其他玩家正在启动等候室进行随机自动匹配,即使等待室已关闭,Google也会自动匹配它们。 并非所有用户都会发生此行为。仅适用于少数用户。
这是启动等待的代码:
final int MIN_PLAYERS = Integer.MAX_VALUE;
Intent i = Games.RealTimeMultiplayer.getWaitingRoomIntent(RGoogleAPI.getGoogleApiClient(), room, MIN_PLAYERS);
mWaitingRoom = room;
// show waiting room UI
startActivityForResult(i, RC_WAITING_ROOM);
我想提一下,即使我想要显示排行榜或成就,stil也会返回代码RESULT_RECONNECT_REQUIRED并且排行榜正在完成
答案 0 :(得分:0)
常量值:10001或RESULT_RECONNECT_REQUIRED
是在需要重新连接时发送回调用Activity的结果代码。
GoogleApiClient
处于不一致状态,必须重新连接到服务才能解决问题。使用当前连接进一步调用服务不太可能成功。
如果GamesClient最终处于不一致状态,您还可以在getAchievementsIntent()
and getAllLeaderboardsIntent()
中找到R ESULT_RECONNECT_REQUIRED
作为onActivityResult(int, int, Intent)
中的resultCode返回。
查看此SO question中的解决方案,它也可以帮助您解决问题。