Как я могу получить имя пользователя Google на Android?

Я видел ссылки на использование идентификатора Учетной записи Google AccountManager like Accessing / имя пользователя через Android, но кажется, что это для захвата authtoken?

Мне просто нужен доступ к имени пользователя, никаким паролям или любым подлинным маркерам.

Я использую андроид 2.1 sdk.

18
задан Community 23 May 2017 в 12:24
поделиться

1 ответ

Как упоминалось в комментариях, ответ Романа на Как получить основной адрес электронной почты устройства Android решает эту проблему. {{1 }} Вот код, который я использовал, который также вычеркивает имя пользователя из электронного письма.

public String getUsername() {
    AccountManager manager = AccountManager.get(this); 
    Account[] accounts = manager.getAccountsByType("com.google"); 
    List<String> possibleEmails = new LinkedList<String>();

    for (Account account : accounts) {
      // TODO: Check possibleEmail against an email regex or treat
      // account.name as an email address only for certain account.type values.
      possibleEmails.add(account.name);
    }

    if (!possibleEmails.isEmpty() && possibleEmails.get(0) != null) {
        String email = possibleEmails.get(0);
        String[] parts = email.split("@");

        if (parts.length > 1)
            return parts[0];
    }
    return null;
}
46
ответ дан 30 November 2019 в 06:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: