
1.sns로그인 기능을 위한 준비사항(애플은 제외 : 애플로그인은 필요없음)
2.웹소스 수정코드
웹소스상의 sns 로그인버튼에...
앱이면... 아래처럼 링크가 적용되도록 해주시면 됩니다.
***아래 sns로그인중 소스중 해당하는 로그인기능만 사용하면 됨.**
<script>
function snslogin(snstype){
var param;
if(systype.indexOf('facebook') != -1){
//페북로그인 변수
param = {
action: 'facebooklogin',
callback_fun: 'login_callback', //=> 인증결과 값 받을 javascript 함수명
callback_url: '' //인증결과 값을 넘겨받을 url(사용하지 않을경우 값을 비우면 됨)
}
}else if(systype.indexOf('google') != -1){
//구글로그인 변수
param = {
action: 'googlelogin',
callback_fun: 'login_callback', //=> 인증결과 값 받을 javascript 함수명
callback_url: '' //인증결과 값을 넘겨받을 url(사용하지 않을경우 값을 비우면 됨)
}
}else if(systype.indexOf('naver') != -1){
//네이버로그인 변수
param = {
action: 'naverlogin',
callback_fun: 'login_callback', //=> 인증결과 값 받을 javascript 함수명
callback_url: '' //인증결과 값을 넘겨받을 url(사용하지 않을경우 값을 비우면 됨)
}
}else if(systype.indexOf('kakao') != -1){
//카카오로그인 변수
param = {
action: 'kakaologin',
callback_fun: 'login_callback', //=> 인증결과 값 받을 javascript 함수명
callback_url: '' //인증결과 값을 넘겨받을 url(사용하지 않을경우 값을 비우면 됨)
}
}else if(systype.indexOf('apple') != -1){
//애플로그인 변수
param = {
action: 'applelogin',
callback_fun: 'login_callback', //=> 인증결과 값 받을 javascript 함수명
callback_url: '' //인증결과 값을 넘겨받을 url(사용하지 않을경우 값을 비우면 됨)
}
}
//앱단 sns로그인 기능호출
webkit.messageHandlers.cordova_iab.postMessage(JSON.stringify(param));
}
//sns인증결과 값을 받을 함수 정의
function login_callback(val){
//인증된 결과값 확인하여 필요한 (기존)로그인로직에 사용하면 됨.
alert(JSON.stringify(val)); //값 확인용 alert
}
</script>
<!-- 페북로그인 버튼등 해당 스타일의 sns로그인버튼을 만들고 아래처럼 링크를 적용함-->
<a href="javascript:snslogin('google')">구글로그인</a>
<a href="javascript:snslogin('facebook')">페북로그인</a>
<a href="javascript:snslogin('naver')">네이버로그인</a>
<a href="javascript:snslogin('kakao')">카카오로그인</a>
<a href="javascript:snslogin('apple')">애플로그인</a>
<!--
*추가적으로 연동 필요한 변수가 있다면 말씀해주세요. 협의하여 정의하면 됩니다.
*웹단에선 네이티브sdk sns로그인 기능이 동작하지 않으므로...
아래처럼 앱인지 웹인지 구분의 ua값을 체크하여 구분하는 소스를 활용하면 됩니다.
-->
<script>
if(navigator.userAgent.toLowerCase().indexOf('mobileapp') != -1){
//앱인경우
} else {
//웹인경우
}
</script>
3.SNS인증이후 웹의 로그인/회원가입 처리
**- 실제 서비스 로그인은 웹단에서 처리하셔야 합니다. 앱에선 각 SNS의 로그인인증만을 처리합니다.**
- 앱단에서 SNS로그인인증을 통해 가져온 개인정보로(아래 4번정보 참고)... 실제 로그인인증처리 및 가입화면등에 정보표시는 웹단에서 기존 로직에 적용하여 처리하시면 됩니다.
4.웹URL 및 javascript함수에 넘겨주는 변수정보 연동방법