마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

Facebook 세션로그인 예제 문제

0 추천
페이스북 게임을 개발하고 있습니다.

SDK도 잘 붙이고 했는데요.

페북 앱이 설치되지 않은 상태에선 페북 웹으로 정상 로그인이 됩니다.

그런데 페북 앱이 설치된 상태에선 로그인이 되질 않아요.

 

제 게임만 그런가 해서, SDK 예제 중에 SessionLoginSample을 import 해봤습니다만,

결과가 같습니다. 페북앱이 깔려있으면 로그인이 되질 않네요.

 

이런 경우 어떻게 해결할 수 있을까요?

 

SDK 버전은 3.6 최신 버전 쓰고 있습니다.
바야바 (3,840 포인트) 님이 2014년 2월 6일 질문
바야바님이 2014년 2월 6일 수정

2개의 답변

+1 추천
 
채택된 답변
이상하네요.

 

제가 SessionLoginSample을 이용해서 로그인이 잘 되는데요.

 

코드 중 빠진 부분이 있지 않은가요?
방귀과장 (18,940 포인트) 님이 2014년 2월 6일 답변
바야바님이 2014년 2월 6일 채택됨
페북 공식앱 설치된 상태에서 로그인하신거 맞나요?

SDK에 있는거 그대로 import 한건데 전 안되네요.

공식앱을 삭제하면 웹로그인으로 잘 되고요.
네, 페북 공식앱이 설치된 상태에서 로그인했습니다.

제건 sns manager +라는 앱에서 사용했는데 게임에서는 다르게 적용될까요?
마찬가지일거라 생각해요.
제 게임에서 안되서, SessionLoginSample도 해봤지만,
페북 SDK에 포함된 예제인데도 결과가 같거든요.
이클립스에서 바로 실행하신거 맞나요?

IRC에서 여쭤보니 keystore 해시키를 뽑아서 페북에 등록을 하고 해보라는데요.
키싸인을 안하고 이클립스에서 바로 실행해서 그런건가 싶고...
페이스북이 로그인 되지 않는 주요 원인이 keystore 해시키와 관련있습니다. 이클립스에서 바로 실행하는 것은 디버그 모드로 실행하는 것인데요.

페이스북의 개발자 계정에 님의 디버그키의 해시키를 등록하고 app_id를 SessionLoginSample에 입력하세요.

디버그키의 해시키 얻는 법은 페이스북 개발자 센터에 잘 설명되어 있습니다.
감사합니다.
큰 도움이 되었어요.
말씀하신대로 해보겠습니다.
+2 추천
해시키 관련 오류가 확실해 보입니다.

패이스북 앱을 이용할 경우 해시키 입력이 항상 이슈가 되기는 합니다.

해시키를 얻는 가장 간단한 방법을 알려드립죠~~!

일단 페이스북 로그인을 무작정 실행 합니다.

당연히 오류가 납니다.

하지만 Session.openActiveSession 의 call 인자에 보시면 익셉션도 같이 넘어 옵니다.

요고이 로그 찍어보시면 해시키 전문과 함께 해시키가 일치 하지 않는다고 나옵니다.

굳이 어렵게 키스토어 찾고 머찾고 ssl깔고 하실 필요가 없습죠~~!

그리고 이렇게 이클립스에서 실행시킨 해시키는 디버그키의 해시키이므로 사인을 하게 되면 다시 무용지물이 됩니다.

허나 이 또한 사인을 하셔서 익셉션에서 해시키 가로채시면 되죠~~!

그리고 페이스북에 해시키는 여러개가 등록 가능합니다.

미리 배포용키를 만들어 이작업을 한후 2개 등록후에 맘편히 작업하시면 됩니다.

아~~! 이거 엄청 꿀팀인거 같은데? ㅋ
ThisPlus (46,920 포인트) 님이 2014년 2월 6일 답변
달고 보니 바야바님 덜덜덜~~~!
송구하다~~!ㅜㅜ
헐 기가막힌 정보로군요.
openssl 받고 씨름하던 중인데 말씀하신대로 해볼게요.
답변 달아주셔서 송구합니다.
말씀하신게
Facebook SDK 내에 있는 Session.openActiveSession에서 가로채라는 말씀이신거죠?
2개 다 채택해 드리고 싶었는데 1개만 되네요.
먼저 답변해주셔서 방귀님꺼 채택할게요. 죄송해요 ㅠㅠ
...