카카오톡 공유하기 4019에러가 발생합니다

안녕하세요.

하이브리드앱 환경에서 카카오 공유하기 기능을 사용하려하고 있습니다.
웹브라우저에서는 정상적으로 작동을하나, 모바일에서 시도 시 4019 에러가 발생합니다.
앱-웹 개발이 분리되어있어… 웹에서 처리 할 수 있는 방법이 있는지 궁금합니다. 혹은 웹에서 더이상 조치가 불가능한지 여부도 파악하고 싶어요. 앱에서는 웹뷰로 화면을 띄어주고 있습니다.

[요청 실패 정보]

  • ID : 1213927
  • Error Code : 4019
  • UUID : 0446b6e6-3bbd-47a2-8c62-a7220423d488
  • 앱의 Web 플랫폼에 도메인을 등록해야 합니다.
  • 플랫폼에 맞는 앱 키를 사용해야 합니다.
  • 앱의 Android 플랫폼에 키 해시를 등록해야 합니다.

안녕하세요.

해킹에 의한 위변조 및 피싱 방지를 위해
공유하기가 구동되는 사이트는 미리 디벨로퍼스 설정에 등록해야 작동하는데요.
하이브리드앱에서 띄운 사이트 도메인을 등록하시면 됩니다.
아래 주소 디벨로퍼스 플랫폼 설정 > 도메인에 등록 부탁드려요.

http://192.168.10.12:3001

답변 감사합니다…!

도메인 등록 후 “카카오톡이 실행되지 않나요?” 페이지로 리다이렉트 되고 있어요.
카카오톡은 설치가 되어있는데요… 다시 다운을 받아도 동일한 에러가 발생해요.

iOS 에서 카카오 로그인은 유니버셜 링크 라는 OS에서 제공하는 기능을 이용하게됩니다.
카카오톡이 정상적으로 설치되어 있고 로그인도 되어 있는 상태라면

유니버셜 링크 설정이 잘못되어 말씀하신 증상이 발생하는 경우가 있습니다.
일반적으로 카카오톡이 외부 앱에서 최초 실행되는 시점에 OS에서 실행여부를 묻는 Confirm창이 표시되는데 이때 취소를 하셨거나 유니버셜 링크 실행 방법 변경한 경우 등. 해당 기기 종속적 설정에 따라 발생합니다.

아이폰 설정에서 앱 > Safari > “방문 기록 및 웹사이트 데이터 지우기” 하시면 됩니다.

OS 및 기기 종속적인 문제라 보편적인 내용 안내 드렸으며, 시도해보시고 결과 알려주시겠어요?

알려주신 방법으로 아이폰에서 시도해보았으나 Confirm창은 뜨지 않았으며 동일한 증상이 나타납니다.

개발하신 앱에 종속적인 문제인지 확인하기 위해

아래 카카오 디벨로퍼스 공유하기 데모 페이지를 하이브리드앱에 띄우시고 동일한지 확인 부탁드려요.

Kakao Developers

데모 페이지를 하이브리드 앱에서 띄울 시 정상작동합니다 !

데모페이지를 인앱에 띄우기에는 어려워 모바일 브라우저를 열어 데모 페이지로 이동 시키도록하여 테스트 하였습니다.
혹시 몰라 같은 방식으로 인앱에서 Kakao.Share.sendCustom 함수를 호출하는것이 아닌 모바일 브라우저를 띄워 해당 페이지에서 Kakao.Share.sendCustom 함수를 호출하도록 시도해보았으나… “카카오톡이 실행되지 않나요?” 페이지로 리다이렉트 되었습니다.

추가로 사파리 앱인스펙터로 확인한 네트워크탭 결과도 공유드립니다…

  1. https://kapi.kakao.com/v2/api/kakaolink/talk/template/validate? → 200 응답
  2. KakaoTalk…(카카오톡이 실행되지 않나요?)

혹시, 사용자 액션없이 함수를 호출하거나 비동기 함수로 호출하나요?

이전 댓글에서 언급한 내용대로 테스트를 위해 추가한 페이지에서는
해당 페이지 진입 시 사용자 액션없이 비동기 함수로 호출하도록 했습니다!

(기존방식에서는 비동기함수가 아닌 사용자 액션으로 함수를 호출하였습니다.)

브라우저에서 사용자 액션없이 외부앱을 호출하는 기능은
카카오와무관하게 OS레벨에서 차단합니다.

기존방식에서는 비동기함수가 아닌 사용자 액션으로 함수를 호출하였습니다.

사용자가 버튼 클릭해 Kakao.Share.sendCustom 함수를 호출 했는데도 안된다는 말씀이신가요?

구현된 코드블럭 공유 부탁드려요.

웹프로젝트에 구현된 코드블럭은 다음과 같습니다.

$('#kakaotalk-sharing-btn').on('click', function () {
    const inviteCode = $('#text-invite-code').val();

    Kakao.Share.sendCustom({
      templateId: 118592,
      templateArgs: {
        inviteCode: inviteCode,
      },
    });
  })

iOS 하이브리드앱을 만들어 웹뷰에 기재하신 방식과 동일한 웹페이지 띄우고 실행해보니 정상작동합니다.

(인앱브라우저, 기본 브라우저 모두 정상작동)

개발하신 앱 종속적 문제인것 같은데요.

빈 프로젝트에 하이브리드앱을 만들어 정상작동하는지 한번 테스트 해보시겠어요?