저는이 문제를 며칠 동안 연구하면서 머리카락을 없애고 있습니다. 내 문제를 가장 정확하게 설명하는 또 다른 스레드는 here이지만 제안 된 솔루션은 나에게 적합하지 않았습니다.Facebook 인증 페이지 오류 - 로그인되지 않았습니다.
Xamarin Forms를 사용하여 크로스 플랫폼 모바일 앱을 만들고 있는데, 사용자 인증 수단으로 Facebook 로그인을 통합하려고합니다. 나는 각 모바일 플랫폼 프로젝트에서 플랫폼 특정 방식으로 페이지를 렌더링하고 Xamarin.Auth API를 사용하여 대량 인증을 처리하는 방식으로 로그인 페이지를 모달로 표시합니다. 다음 SNIPPIT은 안드로이드 implementaiton에서입니다 :
var activity = Context as Activity;
var authenticator = new OAuth2Authenticator(
clientId: AppConstants.FacebookAppId,
scope: "",
authorizeUrl: AppConstants.FacebookAuthorizeUri,
redirectUrl: AppConstants.FacebookRedirectUri);
authenticator.Completed += async (sender, eventArgs) =>
{
// Check for authentication, call Graph API, deserialize JSON, etc...
};
activity.StartActivity(authenticator.GetUI(activity));
이 기본적으로 모든 온라인 예를주는 보일러 플레이트 코드, 그리고 페이스 북 로그인 페이지를 제공합니다. 그러나, 렌더링 된 페이지의 모달을 추진해야 페이스 북 버튼, 내 로그인을 클릭 한 후, 내가 할 모든이있다 :
"로그인하지 않음 : 당신은 로그인하지 않은 로그인을 다시 시도하십시오.. "
나는 clientId
매개 변수가 내 Facebook 개발자 콘솔에서 내 Facebook App ID와 일치하는지 확인했습니다. OAuth2Authenticator
개체에 제공된 리디렉션 및 인증 URI가 올바른지 확인했습니다. Facebook 개발자 콘솔에 리디렉션 URI를 추가했습니다. keytool과 openssl을 사용하여 발견 한 나의 개발 keyhash도 정확합니다. 내 패키지 이름과 클래스 이름 (package.name.MainActivity)도 콘솔에서 정확합니다. (내 프로젝트의 패키지 이름은 Android 프로젝트를 두 번 클릭하고 'Android Manifest'로 이동하여 직접 설정했습니다. 이름). 필자는 페이스 북 개발자 콘솔에서 안드로이드 프로젝트를 여러 번 읽고 제거했다.
제 질문은 여기 Xamarin 플랫폼과 관련된 다른 단계가 있습니까? 나는 정말로 그 오류가 무엇인지 모릅니다. 문제에 대한 도움이나 의견을 보내 주시면 감사하겠습니다.
미리 감사드립니다.
URL을 승인하고 리디렉션 할 때 무엇을 했습니까? 리디렉션 URL의 약식 버전조차 도움이 될 것입니다. – hvaughan3
'authorizeUrl'은 https://m.facebook.com/dialog/oauth/로 설정되어 있습니다.'redirectUrl'은 http://www.facebook.com/connect/login_success.html로 설정되어 있습니다. 니가 필요할지도 모르는 것이 있으면 알려줘. –
네가 정확히 내가 가진 것. Facebook 개발자 사이트에서 ** Facebook 로그인 ** 제품을 활성화 했습니까? ** Facebook Login **에서 ** Client OAuth Login **, ** Web OAuth Login ** 및 ** Embedded Browser OAuth Login **을 사용하도록 설정했는데 모두 활성화하지 않아도됩니다. 나도 떠났어 ** 인증 취소 콜백 ** empty – hvaughan3