Gmail Imap аутентификация с использованием AccountManager - PullRequest
6 голосов
/ 28 декабря 2011

Используя приведенный ниже код, я могу получить токен от AccountManagerне могу понять, как использовать этот токен с API Java (IMAP) для Android (Session, Store, Folder, ..)?

Я хотел бы аутентифицировать GmailIMAP с помощью диспетчера учетных записей, как мне это сделать?

    AccountManager manager = AccountManager.get(this);
    Account[] accounts = manager.getAccounts();

    manager.getAuthToken(accounts[0], "oauth2:https://mail.google.com/", null, this, new AccountManagerCallback<Bundle>(){

        public void run(AccountManagerFuture<Bundle> future) {
            try {
                String token = future.getResult().getString(AccountManager.KEY_AUTHTOKEN);

            } catch (OperationCanceledException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (AuthenticatorException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (MessagingException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }

    }, null);

1 Ответ

0 голосов
/ 22 мая 2013

См. google-mail-oauth2-tools
Получив токен, вы сможете использовать эти примеры кода для завершения всего остального.

...