Невозможно войти в игровые сервисы Google - PullRequest
0 голосов
/ 16 октября 2018

Я пишу простое приложение на Android O и хотел бы подключиться к игровым сервисам Google, чтобы использовать игровой сервис в реальном времени.

Я просмотрел документацию, но не могу найти ни одной ошибки.

У меня есть кнопка на xml для активации логина:

<com.google.android.gms.common.SignInButton
    android:id="@+id/sign_in_button"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:layout_constraintBottom_toTopOf="@+id/goButton"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.5"
    app:layout_constraintStart_toStartOf="parent" />

В onCreate у меня есть это:

    mGoogleSignInClient = GoogleSignIn.getClient(this, GoogleSignInOptions.DEFAULT_GAMES_SIGN_IN);
    findViewById(R.id.sign_in_button).setOnClickListener(this);

затем на слушателе для кликов:

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.sign_in_button:
                Log.d("MainActivity", "Sign-in button clicked");
                clickedSignIn(v);
                break;
        ...
        ...
    }

    public void clickedSignIn(View view) {
        Log.d("MainActivity","clickedSignIn");
        startActivityForResult(mGoogleSignInClient.getSignInIntent(), RC_SIGN_IN);
    }




    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == RC_SIGN_IN) {

            Task<GoogleSignInAccount> task =
                   GoogleSignIn.getSignedInAccountFromIntent(data);

            try {
                GoogleSignInAccount account = task.getResult(ApiException.class);
                onConnected(account);
            } catch (ApiException apiException) {
                String message = apiException.getMessage();
                if (message == null || message.isEmpty()) {
                    message = "Unknown error on sign-in.";
                }

                onDisconnected();

                new AlertDialog.Builder(this)
                        .setMessage(message)
                        .setNeutralButton(android.R.string.ok, null)
                        .show();
            }
        }

    }

По какой-то причине я не понимаю, я не вижу никакого знака или сообщения (я думал, что это то, что должно произойти), и получаю нулевой знак в результатекоторое переводится в сообщение «ошибка входа».

Я добавил приложение для тестирования в игровые сервисы в play.google.publish, пользователь добавлен как пользователь тестирования.

Iследуйте документации здесь: https://developers.google.com/games/services/android/signin

1 Ответ

0 голосов
/ 18 октября 2018

Мне не хватало добавления идентификатора приложения в файл манифеста, как описано здесь: https://developers.google.com/games/services/android/quickstart#step_3_modify_your_code

...