카카오톡 '메시지' 공유 기능 시, 웹으로 열릴 때와 카카오톡 앱으로 열릴 때의 차이점 문의

안녕하세요.

카카오계정 를 보면 메시지를 공유할 수 있는 기능이 있습니다.

저희는 하이브리드 앱 형태이고요, Javascript SDK를 활용해서 해당 기능을 구현했습니다.

저희 앱에서 공유 할 시, 웹으로 카카오톡 친구목록이 뜨는데요,

다른 앱의 경우, 공유 할 시, 카카오톡 앱이 열리면서 친구목록이 뜹니다.

이 둘간 에는 어떤 차이점 때문에 동작 방식이 달라지는지 문의 드립니다.

감사합니다.

1개의 좋아요

안녕하세요.

하이브리드 앱 가이드의 내용이 적용되셨을까요?

Kakao Developers - 하이브리드 앱 가이드

답변 감사합니다.

네 그렇습니다.

이대로 되어있으며, 추가적으로 카카오톡 메시지 공유 시, URL이

intent:가 아닌
https://sharer.kakao.com/talk/friends/picker/easylink?app_key=

로 요청이 됩니다.

코드 공유 가능하실까요?
민감한 정보가 포함되어 있으시다면, 개인 메시지로 전달 부탁드립니다. @woody.ho ← 클릭하면 보내실 수 있어요

코드라면 front-end의 자바스크립트를 공유드리면 될까요?

넵~! JS 코드 부탁드리며 앱 ID도 같이 부탁드릴게요~

$.ajax({

    url:'/kakaoapi/link/feed/template',

    success:function(resp) {

        aKey = resp.appKey;

        tId = resp.templateId;

        Kakao.cleanup();

        Kakao.init(aKey);

        Kakao.Link.createCustomButton({

            container: '.kakao',

            templateId: tId,

            templateArgs: {

                'subject':'견적서',

                'description':'요청하신 견적서입니다.',

                'buttonName':'견적서',

                'pathWeb':sharingUrl,

                'pathMobileWeb':sharingUrl,

                'hash':hash

            },

            installTalk: true,

            callback: function(){

                estimateSaveTypeNo = 2;

                EstimateInstance();

            }

        });

    }, error : function() {

        disconnectSession();

    }

});

.kakao라는 버튼에 만든 템플릿을 입히는 방식을 선택했습니다.
앱 ID는 443603입니다.

네 이 소스코드가 맞습니다. 개발자에게 문의하여 올린 글이니 신뢰하셔도 좋습니다.

하이브리드 앱의 user-agnet를 가공하셨을까요?
위에 제공해 주신 코드에는 별다른 문제가 없어 보입니다.

JS SDK에서는 user-agent 값을 판단하여 인텐트 스킴을 호출하는데요.
브라우저로 동작한다면 이 값이 가공되어 있을것 같습니다.

네 소중한 답변 감사드립니다.

혹시 intent로 요청이 되도록 하려면 user-agent에 어떤 값이 포함되어야 하는지 답변 받을 수 있을까요?

wv, mobile 값의 존재 유무를 가장 크게 판단하지만, 기본적으로 가공 안하시는 것을 추천드리며, 반드시 필요하신 경우 기존 값에 append 하시어 사용하시길 권장드립니다.

소중한 답변 감사드립니다.