QuickMatch onJoinedRoom получает ошибку 2 - программирование
Подтвердить что ты не робот

QuickMatch onJoinedRoom получает ошибку 2

Я пытаюсь подключиться через быстрый матч. У меня все включено. API включены, ключ отладки и производственный ключ добавляются в список Oauth2 в консоли API Google.

Реал-Мультиплеер включен, а игровое обслуживание опубликовано. Я пробую пример кода в своей игре, плюс я подписываю пользователя.

Я получаю ошибку 2 в onJoinedRoom

Я пытаюсь войти с помощью этого:

    public void signInSilently() {
    mGoogleSignInClient.silentSignIn().addOnCompleteListener(getActivity(),
            new OnCompleteListener<GoogleSignInAccount>() {
                @Override
                public void onComplete(@NonNull Task<GoogleSignInAccount> task) {
                    if (task.isSuccessful()) {
                        //onConnected(task.getResult());
                        Utils.logDebug("OnlineFragment.startSignInIntent()","onComplete, isSuccessful.");
                        onConnected(task.getResult());
                    } else {
                        startSignInIntent();
                        Utils.logDebug("OnlineFragment.startSignInIntent()","onComplete, NOT isSuccessful.");
                        task.getException().printStackTrace();
                    }
                }
            });
}

Он всегда onConnected

private void onConnected(GoogleSignInAccount googleSignInAccount){
    mRealTimeMultiplayerClient = Games.getRealTimeMultiplayerClient(getActivity(), googleSignInAccount);

    startQuickGame();
}

После подключения, я начинаю новый быстрый матч:

    private void startQuickGame() {
    if(getActivity() != null){
        // auto-match criteria to invite one random automatch opponent.
        // You can also specify more opponents (up to 3).
        // TODO: Make the first param value 2
        Bundle autoMatchCriteria = RoomConfig.createAutoMatchCriteria(1, 1, ROLE_ANY);

        // build the room config:
        RoomConfig roomConfig =
                RoomConfig.builder(mRoomUpdateCallback)
                        .setOnMessageReceivedListener(mMessageReceivedHandler)
                        .setRoomStatusUpdateCallback(mRoomStatusCallbackHandler)
                        .setAutoMatchCriteria(autoMatchCriteria)
                        .build();

        // prevent screen from sleeping during handshake
        getActivity().getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

        // Save the roomConfig so we can use it if we call leave().
        mJoinedRoomConfig = roomConfig;

        // create room:
        mRealTimeMultiplayerClient.create(mJoinedRoomConfig);
    }
}

Затем я получаю сообщение об ошибке в слушателе (только эта функция из прослушивателя включена, другие функции не вызываются)

    private RoomUpdateCallback mRoomUpdateCallback = new RoomUpdateCallback() {
    @Override
    public void onRoomCreated(int code, @Nullable Room room) {
        // Update UI and internal state based on room updates.

        if(room != null)
            Log.d("SignInGoogleOnlineFrag", "Room isn't null");

        if(code == GamesCallbackStatusCodes.OK)
            Log.d("SignInGoogleOnlineFrag", "OK");

        if (code == GamesCallbackStatusCodes.OK && room != null) {
            Log.d("SignInGoogleOnlineFrag", "Room " + room.getRoomId() + " created.");
        } else {
            Log.w("SignInGoogleOnlineFrag", "Error creating room: " + code);
            // let screen go to sleep
            getActivity().getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

        }
    }
4b9b3361