Мы создаем приложение, которое получает доступ к файлам на Google Диске. У нашего приложения есть веб-интерфейс, приложение для Android и приложение для iOS. Мы используем oAuth2, чтобы позволить пользователю авторизовать наше приложение для доступа к своей учетной записи на Google Диске. Мы используем Java SDK для Google Диска в веб-приложении и Android / iOS SDK для Google Drive для мобильных устройств. Мы не можем использовать токены oAuth, возвращаемые Android SDK, в iOS и наоборот. Мы также не можем использовать токен, полученный Java SDK (нашим веб-сервером) в приложении для Android. Из-за этого нам пришлось создать отдельные клиенты oAuth для каждой платформы (веб, Android, iOS), и пользователю необходимо авторизоваться один раз на каждой платформе, что не очень удобно для пользователя. Есть ли лучший способ использовать один и тот же токен oAuth для разных клиентов? Мне здесь не хватает чего-то очень простого?
Совместное использование токенов Google oAuth между Android, iOS и веб-приложениями
comment
Я думаю, тебе не хватает чего-то базового. Все клиенты должны быть в одном проекте. Пользователи авторизуются на уровне проекта, а не на уровне клиента. Я не знаю насчет iOS, но Android OAuth привязан к имени пакета и ключу подписи. Таким образом, вы не захотите делиться токеном доступа Android где-либо еще.
- person pinoyyid   schedule 09.09.2017
Ответы (1)
Вам потребуется получить токен на iOS и Android для сервера.
См. этот документ для iOS См. этот документ для Android
В каждом приложении вы сначала просите пользователя войти в систему. Затем проверьте на сервере, есть ли уже токен или нет. В противном случае запросите этот доступ и сохраните токен на сервере.
person
nvnagr
schedule
08.09.2017