2017-09-07 1 views
2

Google 드라이브의 파일에 액세스하는 애플리케이션을 구축 중입니다. 우리의 응용 프로그램에는 웹 UI, Android App 및 iOS 응용 프로그램이 있습니다. oAuth2를 사용하여 사용자가 Google 드라이브 계정에 액세스하도록 앱을 인증하도록 허용합니다. Google은 웹용 애플리케이션의 Google 드라이브 Java SDK와 모바일 용 Google 드라이브의 Android/iOS SDK를 사용합니다. iOS에서는 Android SDK에서 반환 한 oAuth 토큰을 사용할 수 없으며 그 반대의 경우도 마찬가지입니다. 또한 Android 앱에서 Java SDK (웹 서버가 제공)가 수신 한 토큰을 사용할 수 없습니다. 이 때문에 각 플랫폼 (웹, Android, iOS)마다 별도의 oAuth 클라이언트를 만들어야하고 사용자는 각 플랫폼에서 한 번 인증해야합니다. 이는 사용자에게 친숙하지 않습니다. 클라이언트간에 동일한 oAuth 토큰을 사용하는 더 좋은 방법이 있습니까? 여기에 아주 기본적인 것을 놓치고 있습니까?Android, iOS 및 웹 앱간에 Google OAuth 토큰 공유

+0

나는 기본적인 것을 놓치고 있다고 생각합니다. 모든 클라이언트는 단일 프로젝트에 있어야합니다. 사용자는 클라이언트 수준이 아닌 프로젝트 수준에서 권한을 부여합니다. 나는 IOS에 대해 모른다. 그러나 Android OAuth는 패키지 이름과 서명 키에 묶여있다. 따라서 다른 곳에서는 Android 액세스 토큰을 공유하고 싶지 않을 것입니다. – pinoyyid

답변

0

서버용 iOS 및 Android에서 토큰을 받아야합니다.

See this doc for iOS 응용 프로그램의 각 See this doc for Android

먼저 로그인하는 사용자를 요청할 것입니다. 그런 다음 이미 토큰이 있는지 여부를 서버에서 확인하십시오. 그렇지 않은 경우 해당 액세스를 요청하고 토큰을 서버에 저장하십시오.

관련 문제