Лучше всего использовать OAuth 2.0, используя Client-side flow, который разработан (частично) для мобильных устройств.
В основном то, что вы должны сделать, это использовать Web View и перенаправить пользователей на страницу гранта OAuth 2.0, а затем после того, как они предоставили вам доступ к своим данным вы просто:
- Поймать аутентификации код внутри веб-просмотра
- Закройте веб-просмотра
- Обмен ПОДЛИННЫЙ кодекс для обновления и маркер доступа
- Держите маркер обновления в локальной базе данных, потому что это дает вам неограниченный доступ к API => нет необходимости для запуска потоков Auth.
Вот и все! Благодаря недавно приобретенному токену доступа OAuth 2.0 и токена обновления у вас есть все необходимое для доступа к данным пользователя Drive от их имени и использования API. Вы обошли Android Manager.
Возможно, даже некоторые клиентские библиотеки OAuth 2.0/Web View доступны для Android, что очень поможет.
PS: этот метод широко используется, например, на iOS, если вы используете библиотеку Facebook, сначала проверьте, установлено ли приложение Facebook. Если приложение Facebook не установлено, оно автоматически использует методы OAuth 2 и Web View. Клиентская библиотека Objective-C Google также использует эту технику (как я слышал, никогда не использовал ее).
Вы можете сделать ставку на поиск не-андроидных методов с открытым исходным кодом, которые вы могли бы использовать. –
, поскольку Google-документы могут использовать oauth 1.0 oauth 2.0 и клиентский логин, возможно, решение заключается в том, чтобы отказаться от процесса аутентификации – butelo