Разработка приложений для Android: Как получить учетные данные учетной записи Google Gmail для автоматической отправки электронной почты? - PullRequest
2 голосов
/ 14 февраля 2012

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

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

Я уже знаю, как получить имя пользователя и пароль, но когда я спрашиваю пароль, я получаю следующую ошибку:

02-14 10:53:40.660: E/AndroidRuntime(23719): Caused by: java.lang.SecurityException: caller uid xxxxx is different than the authenticator's uid

Где xxxxx - это номер UID.Мой код такой:

 AccountManager manager = AccountManager.get(this);
 Account[] accounts = manager.getAccountsByType("com.google");
 for (Account account : accounts){
   if(account.name.endsWith("gmail.com")){
      String gmailAddress = account.name;
      String password = manager.getPassword(account);
   }
 }

Пожалуйста, дайте мне пример кода или ссылку для его прочтения.Не дай мне больше ничего.Много Такс

Ответы [ 2 ]

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

Вы должны включить

<uses-permission android:name="android.permission.GET_ACCOUNTS" />

разрешение на AndroidManifest.xml

0 голосов
/ 14 февраля 2012

получение учетных данных аккаунта Google возможно только в том случае, если вы используете один и тот же UID, что невозможно, когда вы пишете, вы являетесь собственным приложением. Я думаю, что вам нужно использовать AuthToken, который создается, когда пользователь регистрирует аккаунт в телефоне. Токен авторизации с токеном acesss для автоматической отправки почты.

...