Плюс.PeopleApi.getCurrentPerson возвращает ноль

В настоящее время я работаю над функцией входа в Google Plus в своем приложении.

Я создал конструктор GoogleApiClient, как показано ниже.

Plus.PlusOptions options = new Plus.PlusOptions.Builder()
            .addActivityTypes("http://schemas.google.com/AddActivity")
            .build();

    myGoogleApiClient = new GoogleApiClient.Builder(this)
            .addConnectionCallbacks(this)
            .addOnConnectionFailedListener(this)
            // .addApi(Plus.API, Plus.PlusOptions.builder().build())
            .addApi(Plus.API, options)
            .addScope(Plus.SCOPE_PLUS_LOGIN)
            .addScope(Plus.SCOPE_PLUS_PROFILE).build();

И метод onConnected

@Override
public void onConnected(Bundle arg0) {
    // TODO Auto-generated method stub

    plusUtilities.ShowToast("Login successful");

    updateGPbutton();
    // hide progress DiaLog
    plusUtilities.DissmissPD();
    // it has deprecated
    // plusUtilities.ShowToast("Login to Google+ with " +
    // mPlusClient.getAccountName().toString());

    // upgraded class
    plusUtilities.ShowToast("Login to Google+ with "
            + Plus.AccountApi.getAccountName(myGoogleApiClient).toString());

    // deprecated
    // mPlusClient.loadPeople(this, "me");

    Plus.PeopleApi.load(myGoogleApiClient, "me");
    // plusUtilities.ShowPD("Fetching user data... ");

    // upgraded and call fetch_user_details method here instead of calling
    // in onPersonLoad() override method
    Log.d("Googleplusclient",
            "" + Plus.PeopleApi.getCurrentPerson(myGoogleApiClient));
    Plus.PeopleApi.loadVisible(myGoogleApiClient, null).setResultCallback(this);

    if (Plus.PeopleApi.getCurrentPerson(myGoogleApiClient) != null) {
        Person currentPerson = Plus.PeopleApi
                .getCurrentPerson(myGoogleApiClient);
        fetch_User_Details(currentPerson);
    }

}

Метод ниже возвращает null

Плюс.PeopleApi.getCurrentPerson(myGoogleApiClient)

Я перешел по ссылке для решения. Затем я перешел по этой ссылке разработчика. Пока я не получу нулевое значение.

Как это решить?


person Karthikeyan Ve    schedule 28.11.2014    source источник


Ответы (1)


Дело в том, что ваша подпись DEBUG sha1 отличается от вашей подписи customkey.keystore sha1!!!! поэтому вы должны найти свою подпись отладки sha1 и создать этот ключ в учетных данных API на консоли Google ТАКЖЕ! : D это работает и исправляет это, поверьте мне, проверьте свою консоль API, и я уверен, что ваши запросы API равны 0?

person Sebastiaan van Dorst    schedule 29.01.2015
comment
что вы подразумеваете под подписью customkey.keystore sha1! ? - person tranquil; 25.03.2015
comment
@tranquil - это означает ваш релиз ‹keystore_name›.keystore, который следует использовать для подписи вашей релизной/рыночной версии приложения - person Eugene Smykov; 01.04.2015