Я написал экспериментальный код, чтобы проверить, как работает поток соединения PlusClient. Я следил за документацией и смог вызвать всплывающее окно выбора учетной записи, а также открыть диалоговое окно авторизации и получить доступ к токенам.Как избежать мгновенного onConnected обратного вызова при использовании PlusClient?
Это было вчера.
Сегодня я полностью не могу подключить PlusClient правильно. Что происходит, так это то, что в PlusClient.connect() обратный вызов connect немедленно вызывается с нулевым пакетом. Вызов PlusClient.getAccountName() возвращает значение null. Я попробовал вызывать PlusClient.revokeAccessAndDisconnect(), а callback onAccessRevoked вызывается с connectionResult с INTERNAL_ERROR в качестве errorCode.
Это похоже на то, что службы Google Play полагают, что у него есть действующий токен, но забыл, кто вошел в систему. Есть ли способ сбросить службы Google Play, чтобы он больше не запоминал токены аутентификации для моего приложения? Я попытался очистить Google Play Services и Google Services Framework, но это не исправило мой isse.
EDIT:
На самом деле это происходит из-за моей собственной глупости. Я начал реорганизовывать свойство областей в свою собственную переменную, но не выполнил работу. Я сделал следующее в коде:
final String scopes = Scopes.PLUS_LOGIN + " "
+ Scopes.PLUS_PROFILE + " "
+ "https://www.googleapis.com/auth/drive.appdata";
mPlusClient = new PlusClient.Builder(this, this, this)
.setVisibleActivities("http://schemas.google.com/AddActivity",
"http://schemas.google.com/BuyActivity")
.setScopes()
.build();
Проблема заключается в том, что существует перегрузка для setScopes(), но я имел в виду сказать setScopes (областей) вместо этого. Это вызвало проблему, которую я описывал выше.