Как мне получить зарегистрированную учетную запись Google на телефонах Android?

Эта проблема, по-видимому, исправлена ​​в lxml версии 4.2.5.

Если вы все еще получаете эту ошибку и указываете конкретную версию lxml в файле требований, попробуйте обновить файл требований, чтобы указать lxml версии 4.2.5 или выше.

У меня была эта ошибка с lxml 4.2.1. Но это было исправлено, когда я изменил требование на lxml 4.2.5.

22
задан Xilo 9 January 2017 в 16:49
поделиться

1 ответ

Я пробую ниже области действия, чтобы получить адрес электронной почты и имя пользователя

Получить учетную запись Google на вашем мобильном телефоне

 public String getMailId() {
        String strGmail = null;
        try {
            Account[] accounts = AccountManager.get(this).getAccounts();
            Log.e("PIKLOG", "Size: " + accounts.length);
            for (Account account : accounts) {

                String possibleEmail = account.name;
                String type = account.type;

                if (type.equals("com.google")) {

                    strGmail = possibleEmail;
                    Log.e("PIKLOG", "Emails: " + strGmail);
                    break;
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
             strGmail = null;
        }

        return strGmail;
    }

Получите имя пользователя учетных записей Google на своем мобильном телефоне

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

        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);
        }
    } catch (Exception e) {
        e.printStackTrace();
        if (possibleEmails != null) {
            possibleEmails.clear();
        }
    }

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

            } else {
                return null;
            }
        } else {
            return null;
        }
    } else {
        return null;
    }
}

и объявите права доступа к файлу mainfest.

  <uses-permission android:name="android.permission.GET_ACCOUNTS" />
0
ответ дан 29 November 2019 в 04:29
поделиться
Другие вопросы по тегам:

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