Использование учетной записи Google в качестве логина ... что дальше? - PullRequest
6 голосов
/ 14 июля 2011

Я разрабатываю приложение для Android, которое будет иметь серверную сторону, похожую на API.И это приложение будет иметь механизмы входа пользователей.Я хочу использовать учетную запись google / fb / twitter в качестве информации для входа в систему, поскольку цель приложения очень социально ориентирована.

Я уже читал об использовании учетной записи Google, хранящейся в телефоне, в качестве подтверждения пользователя ( Как использовать учетные записи Google в качестве логина ).Проблема в том, что я не знаю, что делать тогда?Как я понял, менеджер по работе с клиентами, наконец, даст мне токен.Тогда что мне с этим делать?Как мне сообщить стороне сервера, что пользователь вошел в систему?Как мне сохранить этот токен, так как я понял, что этот токен может измениться при недействительности через некоторое время ...

И еще одна вещь.Что мне делать, когда пользователь входит в свою учетную запись G в первый раз?Я хочу получить свой аватар G и отображаемое имя, например, и сохранить их на сервере, тем самым сэкономив пользователю кучу кликов?Я отправляю их как-нибудь с телефона или получаю как-то с сервера?

Эти же вопросы могут возникнуть и у FB позже.

Надеюсь, я правильно задал свой вопрос, так какнемного более общий вопрос ...

TIA.

Ответы [ 3 ]

2 голосов
/ 18 декабря 2012

Я думаю этот вопрос охватывает именно то, что вы спрашиваете.

Для меня лучшее решение было рассмотрено в этом сообщении в блоге.Он будет работать только с учетными записями Google и предполагает, что вы используете UserService на стороне AppEngine, но я думаю, что он работает хорошо.Надеюсь, это поможет.

1 голос
/ 14 июля 2011

Google использует OpenId, в то время как у FB есть своя вещь.Для этих двух вам понадобятся разные пути.

http://www.sozkan.com/blog/2010/09/24/very-quick-openid-integration-tutorial/

Предоставлено - здесь используются URL-адреса для управления данными - вам нужно обернуть это в свой код, если вы хотите, чтобы все происходило внутри.Получив токен, вы можете уведомить свой серверный код о том, что это такое, срок службы и т. Д.

Информация о различиях: http://thenextweb.com/socialmedia/2010/11/04/facebook-connect-oauth-and-openid-the-differences-and-the-future/

0 голосов
/ 07 октября 2013

Чтобы закончить этот (устаревший) вопрос и где-то припарковать мой фрагмент кода, я начал входить в Google, используя PreferenceScreen действие с этим onCreate() кодом:

    ArrayList<String> list = new ArrayList<String>();
    list.add("https://www.googleapis.com/auth/userinfo.profile");
    final GoogleAccountCredential credential = 
        GoogleAccountCredential.usingOAuth2(getApplicationContext(), list); 
    Preference acctValue = findPreference("GMail");  // A <Preference> in the XML...

    acctValue.setOnPreferenceClickListener(new OnPreferenceClickListener(){
        @Override
        public boolean onPreferenceClick(Preference preference) {
            startActivityForResult(credential.newChooseAccountIntent(), 1);
            return false;
        }
    });

И они требовали добавления этих теневых символов в мою папку libs:

google-api-client-android-1.17.0-rc.jar
google-play-services.jar
google-api-client-1.17.0-rc.jar
google-http-client-1.17.0-rc.jar
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...