특정 안드로이드 카카오로그인 오류

안녕하세요 모바일 웹앱으로 사용중에있는데 카카오톡 로그인을 연동하려고
자바스크립트로 추가하려는데 애플제품에선 문제 없이 작동이 되는데 안드로이드에서는
몇몇 기종만 문제 없이 정보를 가져오고 최근제품들에는 에러가 발생합니다.
팝업이뜨고 에러가나면서 이동이 안되네요 ㅜ

스크립트이구요
Kakao.init(“APP_KEY”);
Kakao.Auth.createLoginButton({
container: ‘#kakao_button’,
success: function(authObj) {
console.log(authObj)
Kakao.API.request({
url: ‘/v2/user/me’,
success: function(response) {
console.log(response);
},
fail: function(error) {
console.log(error);
}
});
},
fail: function(err) {
alert(JSON.stringify(err));
}
});

에러 코드입니다.
Failed to launch ‘intent:#Intent;action=com.kakao.talk.intent.action.CAPRI_LOGGED_IN_ACTIVITY;launchFlags=0x08880000;S.com.kakao.sdk.talk.appKey=“APP_KEY”;S.com.kakao.sdk.talk.redirectUri=https://kapi.kakao.com/cors/afterlogin.html;S.com.kakao.sdk.talk.state=du1m5077iueie72dwtvrj;S.com.kakao.sdk.talk.kaHeader=sdk/1.39.14%20os/javascript%20sdk_type/javascript%20lang/ko-KR%20device/Win32%20origin/http%3A%2F%2Flocalhost%3A12080;S.com.kakao.sdk.talk.extraparams=%7B%22client_id%22%3A%225f732af30c6e33b8e0e050b6104124ca%22%7D;S.browser_fallback_url=https%3A%2F%2Fkauth.kakao.com%2Foauth%2Fauthorize%3Fclient_id%3D5f732af30c6e33b8e0e050b6104124ca%26redirect_uri%3Dhttps%253A%252F%252Fkapi.kakao.com%252Fcors%252Fafterlogin.html%26response_type%3Dcode%26state%3Ddu1m5077iueie72dwtvrj%26proxy%3DeasyXDM_Kakao_let8hzee81h_provider%26ka%3Dsdk%252F1.39.14%2520os%252Fjavascript%2520sdk_type%252Fjavascript%2520lang%252Fko-KR%2520device%252FWin32%2520origin%252Fhttp%25253A%25252F%25252Flocalhost%25253A12080%26origin%3Dhttp%253A%252F%252Flocalhost%253A12080;end;’ because the scheme does not have a registered handler.

안드로이드 웹뷰 환경에서 간편로그인을 구현하기 위해서는
추가로 intent 처리에 대한 구현을 해주셔야 하는데요.
아래 링크를 참고하셔서 native 앱에 해당 구현이 되어있는지 확인 부탁드려요.
https://developers.kakao.com/docs/latest/ko/getting-started/sdk-js#hybrid-app

혹시 크롬 개발자 도구에서 안드로이드 환경으로 테스트 하셨는지 확인 부탁드립니다.
JS SDK는 데스크톱, 모바일 환경에 따라 동작이 달라져서 임의로 UA가 변경된 환경을 지원하지 않습니다.
(크롬 브라우저 > 개발자모드 > 모바일 설정)

만약 해당 처리가 되어있는데 문제가 발생한다면,
어떤 기종에서 해당 문제가 발생했는지 알려주시면 원인 파악에 도움이 될 것 같습니다.

IOS는 따로 intent 처리에 대한 구현이 없이도 잘 반응 하는거 같던데 안드로이드 환경에서만 필요한 작업인건가요??

웹 브라우저에서 앱을 호출하는 방식이 Android와 iOS가 다른데요.
Android 환경에서는 intent를 이용하고,
iOS 환경에서는 Universal Links를 이용하여 간편로그인 기능을 제공하고 있습니다.

앞서 드린 링크의 문서에도 언급되어 있듯이, Universal Links는 별다른 처리를 하지 않으셔도 됩니다.
하지만, ‘공유하기’ 기능은 커스텀 스킴으로 제공하고 있어서 iOS 환경에서도 추가 작업이 필요합니다.

1개의 좋아요

감사합니다!

REST API를 통해서 로그인하는 방식으로 바꿔서 테스트 진행중에 잇는데 로컬환경에선 UserInfo를 잘 받아오는데 실서버에 적용하면 가져오질 못하고있습니다.

//예제
@RequestMapping(value = “/kakaoLogin.do” , produces = “application/json”, method = {RequestMethod.GET, RequestMethod.POST})
public ModelAndView kakaoLogin(@RequestParam(“code”) String code , HttpServletRequest request, HttpServletResponse response, HttpSession session) throws Exception{
ModelAndView mav = new ModelAndView();

		JsonNode token = KakaoController.getAccessToken(code);
		JsonNode accessToken = token.get("access_token");
		JsonNode userInfo = KakaoController.getKakaoUserInfo(accessToken); 
		System.out.println(userInfo);
        mav.setViewName("리다이렉트페이지");
		
		return mav;

}
실서버 적용하면 유저정보를 가져오지 못하네요

사용하신 앱의 ID를 알려주세요.
원인 파악을 위해 실서버 환경에서 어떤 에러가 발생하는지 남겨주세요.

앱 ID 값은 239096 입니다.

저희 로그상으로는 /v2/user/me 요청이 실패한 기록은 없습니다.
구현하신 코드를 다시 확인해주세요.

첨언드리면, REST API는 카카오톡 앱을 이용한 간편로그인을 지원하지 않습니다.
참고해주세요.