Вопрос

Я с самого начала ищу ответ и до сих пор не знаю, что делать! Чтобы объяснить проблему: Мое приложение использует API GTasks. Для этого пользователь ДОЛЖЕН иметь учетную запись Google. У меня есть два способа проверить это:

  1. Я создаю экземпляр менеджера аккаунта и ищу аккаунты com.google, если таких аккаунтов нет.
  2. Я запускаю веб-просмотр, в котором пользователь входит в Google и соглашается использовать API.

Затем мне нужно синхронизировать свое приложение с GTask. На основе информации, извлеченной из веб-просмотра, я попытался создать учетную запись "com.google" с помощью AccountManager, но у меня всегда возникала ошибка "UID вызывающего абонента отличается ...". Я знаю, что проблема должна исходить от "account-Authenticator", потому что "accountType" должен быть одинаковым в XML-файле и в приложении, но я думаю, что это не так, потому что когда я использую другой тип учетной записи, он отлично работает (но я не могу получить authToken от GTask).

Итак, вот мой код:

Authenticator.xml:

родовое слово

Определение типа учетной записи:

родовое слово

Как я использую это в своем классе:

родовое слово

Когда я использую com.plop или что-нибудь еще вместо com.google, все работает отлично.

Итак, у меня два вопроса: 1. Могу ли я использовать учетную запись типа "com.google"? 2. Это нормально, что я не могу получить свой authToken с помощью чего-то еще, кроме com.google (зная, что используемая учетная запись все еще является учетной записью Google, просто она не настроена таким образом на Android)?

Заранее спасибо за помощь и, пожалуйста, простите меня, если ответ был на сайте!

Это было полезно?

Решение

Я ответил на свой вопрос: это невозможно, как я хотел.Вы должны использовать функцию «addAccount», используя тип учетной записи «com.google».Это приведет к появлению активности по созданию учетной записи, используемой системой Android.Тогда все в порядке с использованием GTasks API.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top