Как избежать автоматического запроса диалога входа в игровые сервисы Google Play?

Действия в моей игре расширяют BaseGameActivity, как указано в рекомендациях Google Play Game Services. Проблема в том, что при запуске моих активностей на экране отображается диалог входа в Сервисы Google Play. Я хочу избежать этого. Я хочу поставить кнопку на экране для входа в систему.

¿Как избежать автоматического запроса диалога входа? ничего не могу найти в инструкциях

https://developers.google.com/games/services/training/signin?hl=es

https://developers.google.com/games/services/checklist?hl=es#improving_the_sign_in_experience_for_games


person NullPointerException    schedule 19.07.2014    source источник
comment
Есть ли в вашем коде mHelper.setup(listener) или что-то в этом роде?   -  person Ogen    schedule 19.07.2014


Ответы (2)


Вместо расширенной BaseGameActivity я рекомендую импортировать библиотеку BaseGameUtils и использовать класс GameHelper. Например..

public class MainActivity extends Activity {

    private GameHelper mHelper;
    private GameHelperListener listener;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        mHelper = new GameHelper(this, GameHelper.CLIENT_ALL);

        listener = new GameHelper.GameHelperListener() {

            @Override
            public void onSignInSucceeded() {

            }

            @Override
            public void onSignInFailed() {

            }

        };
        mHelper.setup(listener);
    }
}

Пройдите по этой ссылке. Вы можете управлять тем, когда сервисы Google запрашивают вход в систему, управляя вызовом настройки

person Ogen    schedule 19.07.2014

Как отмечает Оген в своем ответе, использование BaseGameUtils весьма полезно. Это требует дополнительной работы с вашей стороны, которая может быть того стоит, но может и не стоить.

Если вы хотите продолжать использовать BaseGameActivity, вы можете добавить следующее

mHelper.mConnectOnStart = false;

до onCreate() вашей деятельности, которая расширяет BaseGameActivity. Это предотвратит автоматический вход.

person free3dom    schedule 20.07.2014
comment
Вы имели в виду mHelper.setConnectOnStart(false); - person behelit; 20.11.2014
comment
Это то же самое, но да, использование аксессора setConnectOnStart(), вероятно, лучше :-) - person free3dom; 20.11.2014