如何实现自定义对话框以接受基于回合制的多人游戏邀请?

时间:2015-03-22 17:28:39

标签: android google-play-games

我想在onInvitationReceived(Invitation invitation)回调上实现自定义对话框。它将有2个选项 - '接受'并且'拒绝'。

我成功实施了拒绝'行动。以下简化代码 -

@Override
public void onInvitationReceived(Invitation invitation) {
    String invitationId = invitation.getInvitationId();

    if (/*code for selecting 'reject' action*/) {
        Games.TurnBasedMultiplayer.declineInvitation(mGoogleApiClient, invitationId);
    }
}

但我如何实施'接受'行动?特别是来自Invitation对象。我需要TurnBasedMatch个对象来开始对受邀玩家的比赛结束。

Google开发者的以下链接仅列出了显示默认视图的方式,以便接受' (或拒绝')游戏。

https://developers.google.com/games/services/android/turnbasedMultiplayer#handling_invitations

1 个答案:

答案 0 :(得分:1)

我设法自己解决了这个问题。以下是'接受'的简化代码。游戏邀请并获得匹配对象 -

PendingResult<TurnBasedMultiplayer.InitiateMatchResult> pendingResult = 
    Games.TurnBasedMultiplayer.acceptInvitation(mGoogleApiClient, invitationId);

pendingResult.setResultCallback(new ResultCallback<TurnBasedMultiplayer.InitiateMatchResult>() {
    @Override
    public void onResult(TurnBasedMultiplayer.InitiateMatchResult result) {
        if (result.getStatus().getStatusCode() == GamesStatusCodes.STATUS_OK) {
            TurnBasedMatch match = result.getMatch();
            // do something with match ...
        }
    }
});