2013-04-29 2 views
5

타사 웹 서비스 (타사는 Google이 아니며 소유하지 않음)에서 OAuth2를 통해 승인을 받아야하는 앱을 개발 중입니다.타사 OAuth2 승인을 위해 Android AccountManager 사용

이 문서 :

http://developer.android.com/training/id-auth/authenticate.html

나는이 목적을 위해 같은 관리자를 사용해야한다는 제안 것으로 보인다. 이 생각을 한 후에, 나는이 일의 이점에 대해 약간의 의구심을 갖습니다. 또는 저에게 이것을하는 것이 적절하다고해도 말입니다. Google 계정이나 이미 다른 일부 앱에서 AccountManager에 설치된 다른 계정을 사용하려면 AccountManager에서 자격증 명을 얻는 것이 좋습니다. 그러나 AccountManager에 없을 확률이 높은 계정을 사용할 것이므로 설치하려면 모든 작업을 수행해야합니다.

AccountManager는 실제로 OAuth2 요청을 처리하는 데있어 지원을 제공합니까? 그렇지 않으면, 그것을 사용함으로써 무엇을 얻게됩니까?

그리고이 계정 유형과 관련된 웹 서비스를 소유하고 있지 않기 때문에 AccountManager에 이러한 계정을 설치하는 것이 적절합니까?

감사합니다.

답변

0

이 모든 4 년 후에 오히려 늦은 대답 일지 모르지만 짧은 답장을 보내 드리겠습니다.

직접 Oauth를 위해 제 3 자 계정을 설치할 수 없으며 설치할 필요가 없습니다. AccountManager 기능을 구현하고 자체 계정 유형을 생성하는 것은 Facebook이나 Twitter와 같은 타사 OAuth 공급자의 역할입니다. 대략 https://developer.android.com/training/id-auth/custom_auth.html으로 안내됩니다.

AccountManager에 사용자 계정을 등록하는 Facebook, Twitter, WeChat 등의 OAuth 공급자를 비롯한 여러 서비스가 있지만 대부분은 SyncAdapter (계정이 필요함)를 구현하는 데 사용한다고 믿습니다. 앱과 같은 타사 애플리케이션에 대한 OAuth 기능

Google에서는 AccountManager를 통해 획득 한 토큰을 사용하여 API를 사용할 수 있다고 생각합니다. 귀하가 제공 한 링크는 Tasks API에 AccountManager를 사용하는 예를 보여줍니다. 그러나 클라이언트 라이브러리를 사용하면 https://developers.google.com/google-apps/tasks/quickstart/java#step_3_configure_the_project_build에서 설명한 것과 동일한 결과를 얻을 수 있습니다.

타사 OAuth 공급자가 SDK 또는 클라이언트 라이브러리를 제공하지 않으면 제공하는 REST API를 사용할 수밖에 없습니다.

관련 문제