Android API входа в Google получает номер телефона

#android #google-signin

#Android #google-вход

Вопрос:

Я пытаюсь получить номер телефона пользователя, когда он использует API входа в Google для Android, чтобы я мог сохранить его, но я не могу найти никаких ссылок или документации для достижения этой цели. Возможно ли это? Кто-нибудь это сделал?

Я использую пример из документов Android dev с

 GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
                .requestEmail()
                .build();
  

Все работает как onActivityResult, который я могу сделать:

 SharedPreferences.Editor edit = prefs.edit();
            edit.putString("name", account.getDisplayName());
            edit.putString("middlename", account.getGivenName());
            edit.putString("surname", account.getFamilyName());
            edit.putString("dialprefix", AppConstants.getCountryPrefix());
            edit.putString("phone", );
            edit.putString("email", account.getEmail());
            edit.putString("myUUID", myUUID);
  

Недостающая часть — это номер телефона.

Комментарии:

1. Я не уверен, но я думаю, что вы не можете получить номер телефона пользователя из-за конфиденциальности.

2. GoogleSignInOptions ограничивается некоторыми необходимыми деталями, которые, конечно, не имеют номера мобильного телефона. Я не думаю, что он вообще предоставляет номер телефона с каким-либо другим API или областью действия. Посмотрите на People API , посмотрите, что вы можете получить от него..

3. Спасибо. Проверил People API тоже, и, похоже, это не позволяет. Думаю, мне придется вручную запросить номер.