2013-05-21 6 views
0

로그인하는 데 Facebook SDK를 사용하는 앱이 있습니다.
iOS 6 기본 로그인을 지원하며 Facebook App 및 Safari를 대체합니다.Xamarin.Auth 또는 Xamarin.Social을 확장하여 Safari에 대한 폴백을 사용하여 기본 iOS 6 로그인을 지원할 수 있습니까?

곧 트위터 지원을 추가 할 예정입니다.
Safari를 대체하여 iOS 6 로그인을 구현하고 싶습니다.

Xamarin.Auth 또는 Xamarin.Social에 재사용 할 수있는 코드가 있습니까? 아니면 처음부터 다시 작성해야합니까? 우리는 액세스 토큰을 검색하고 저장하고 요청을 인증 할 수 있어야합니다.

Xamarin.Auth에 대한 고유 한 인증 기 작성을 시도했지만 인증을 위해보기 컨트롤러를 제공 하겠지만, iOS 6 인증 대화 상자 또는 Safari를 표시해야한다고 주장합니다.

답변

2

Xamarin.Auth.Authenticator 하위 클래스는 단일 인증 방법이므로 대체 메커니즘이 없습니다. 이 과정의 초기 단계에서 원주민이나 사파리를 사용할지 여부를 선택한 다음 적절한 Authenticator을 사용해야합니다.

Authenticator은 사용자가 (예 : WebRedirectAuthenticator을 사용하여 웹 페이지를 통해) 정보를 제공하고 사용자 토큰 및 기타 정보를 얻는 두 가지 방법을 제공합니다. 예를 들어, OAuth2AuthenticatorWebRedirectAuthenticator을 사용하여 권한 페이지로 이동 한 다음 나중에 리디렉션에서 액세스 토큰을 검색합니다.

공유 작성 페이지를 열고 인증해야하며 Xamarin.Auth와 함께 Authenticator을 사용하여 필요한 인증 정보를 포함시킵니다.

+0

하지만 인증 기가 필요하지 않습니까? 의미, Safari가 나에게 액세스 토큰을 주면, 나는'Authenticator' 클래스를 사용할 필요가 없을 것입니다, 맞습니까? –

+0

잘하면 물건을 명확하게하기 위해 내 대답에 더 많은 정보를 추가했습니다. – ermau

+0

설명해 주셔서 감사합니다. 따라서 Twitter 인증을 위해 Safari를 사용하려면 사파리에서받은'access_token '을 사용하여 수동으로'계정 '을 생성하고 저장 한 다음이 계정으로'TwitterService '를 사용해야합니다. –