[카카오 공유하기] 모바일웹(Android, iOS), 카카오 미설치 환경의 카카오 공유 문의

카카오 미설치 환경에서 웹/앱 (하이브리드 앱)과 모바일웹에서 결과가 다르게 나오는 이슈가 있습니다.

하이브리드 앱 결과

모바일웹 (안드로이드, iOS) 결과

installTalk파라미터를 추가해 보았으나 위와 같은 결과가 나오는데 해결 방안을 공유해 주시면 감사하겠습니다 !

<script src="https://t1.kakaocdn.net/kakao_js_sdk/2.4.0/kakao.min.js"
  integrity="" crossorigin="">
</script>
<script>
    var kakaoAPIkey = "";
    try { Kakao.init(kakaoAPIkey); } catch(e){}
</script>
function kakao_share (msg,img,murl,wurl) {

    Kakao.Share.sendDefault({
    objectType: 'feed',
    content: {
        title: msg,
        description: "내용",
        imageUrl: img,
        imageWidth:720,
        imageHeight:300,
        link: {
        	mobileWebUrl: murl,
        	webUrl: wurl
        }
    },
    installTalk: true,
}

안녕하세요.

카카오톡이 설치되지 않은 iOS 모바일 환경에서 위와같이 다운로드 가능한 페이지가 표시되는 것은 정상적인 동작입니다.

웹/앱과 차이가 있다고 하셨는데요 어떤 차이를 말씀하시는건가요?
또한 웹/앱이 하이브리드 앱을 말씀하시는것인지도 확인 부탁드립니다.

안녕하세요. 답변 감사합니다.

하이브리드앱 환경에서 작업을 진행하고있고,
본문에 말씀하신 내용이 누락되어서 추가했습니다. :slight_smile:

카카오톡이 설치되지않는 모바일에서 테스트했을때
하이브리드 앱에서는 accounts.kakao.com 으로 이동하는데,
웹모바일에서는 talk-apps.kakao.com 으로 이동합니다.

안녕하세요.

iOS에서 JS SDK 2.4.0 버전 카카오톡 공유하기 기능은 유니버셜링크(talk-apps.kakao.com)로 접근합니다. 해당 페이지에서 앱 설치 안내 표시는 iOS 기본 동작입니다.

다만, 하이브리드 앱에서 웹뷰의 User-Agent 값을 수정 하셨다면, JS SDK에서 모바일 웹브라우저로 인식하지 못하여 웹공유로 동작할 수 있습니다. 이 때 브라우저에 카카오 계정 세션이 존재하지 않으면 로그인 페이지가 표시됩니다.

하이브리드 앱에서 공유하기 기능 사용 하신게 맞으실까요? User-Agnet값이 어떻게 되실까요?

넵 맞습니다. 하이드리드 앱에서 공유하기 기능을 사용하였고, User-Agent 값은 Mozilla/5.0 (iPhone; CPU iPhone OS 16_7 like Mac OSX) 이렇습니다.

react hook 관련 답변 삭제

리액트가 아닌 php 환경에서 바닐라 자바스크립트를 사용하여 개발했습니다. 네트워크를 확인해보니 인가코드는 한번 전달하는것으로 보입니다.

죄송합니다.
다른 문의 글에 답변내용을 이 글에 등록 했습니다. ㅠㅠ

동일 환경에서 재현이 되지않아 좀 더 확인 후 답변드리겠습니다.

1개의 좋아요