카카오톡 공유하기 - 하이브리드 앱(웹뷰)에서의 공유하기 기능에 대해 문의사항이 있습니다

안녕하세요 카카오톡 공유하기 API 를 서비스에 연동하는 개발자입니다.

이브리드 앱(웹뷰)에서의 카카오톡 공유하기 기능에 대해 문의사항이 있습니다.

1. 개발 환경

개발환경은 다음과 같습니다.

  • 하이브리드 앱 - iOS, Android 웹뷰에서 Web App을 연동
  • 사용중인 sdk: JavaScriptSDK
  • 사용중인 함수: sendCustom 함수로 templateId를 지정하여 사용자 정의 템플릿 전송
function shareLinkByKakaoTemplateId() {
  Kakao.Link.sendCustom({
    templateId: 11111,
  });
}
  • 동작 결과
    • 모바일 브라우저(safari, chrome): O
    • 하이브리드 앱(웹뷰): X

2. 상황

  • 하이브리앱 가이드
    JavaScriptSDK를 통해 모바일 브라우저에서 잘 동작하는 카카오 공유하기 기능이 하이브리드 앱(웹뷰)에서는 전혀 동작하지 않아 가이드 문서를 검색했고 하이브리드앱 가이드를 을 통해 네이티브 앱의 수정이 필요함을 확인했습니다.

  • 네이티브 수정 없이 url scheme 시도
    다만, 네이티브 앱의 수정이 필요하여, 네이티브 앱 수정없이 다음과 같이 url scheme 방식을 적용해보았습니다만, 모바일 브라우저에서는 동작해도 하이브리드 앱(웹뷰)에서는 동작하지 않았습니다.

kakaolink://send?appkey=asdfjk234jkl423kl4j1lk2357asfklasfasff&appver=1.0&linkver=4.0&extras=%7B%22KA%22%3A%22sdk%2F1.39.14
...생략

3. 질문 정리

  • 네이티브 수정없이 가능한지 알고싶어서요, 혹시 하이브리드 앱(웹뷰) 에서 JavaScriptSDK를 사용하는 경우 네이티브 앱의 수정 없이 카카오 공유하기 기능을 사용하는 방법이 있을까요?

  • 수정 범위를 알고 싶어서요, 혹시 하이브리드앱 가이드에 나온 내용대로 ios, aos의 스킴을 추가하고 메서드를 오버라이딩 하면 바로 해결이 가능한지 알려주실 수 있으신가요?

안녕하세요.

카카오톡 공유하기는 모바일에서 카카오톡 앱을 호출하여 사용하기때문에 네이티브 수정없이 불가능합니다.
앱 호출부 구현을 해주셔야합니다.

수정 범위를 알고 싶어서요

네, 가이드대로 톡호출 할 수 있게 AndroidManifest.xml 에 톡패키지명 설정해주시고 shouldOverrideUrlLoading에 인텐트 스킴으로 톡 실행할 수 있게 해주시면됩니다.

좋아요 1

넵 Android의 경우 다음과 수정하여 카카오톡 공유하기 기능을 사용하겠습니다.

  • AndroidManifest.xml 톡패키지명 설정
  • shouldOverrideUrlLoading 에 인텐트 스킴으로 톡 실행할 수 있도록 수정

그리고, ios의 경우 다음과 같이 가이드가 작성되어 있는데요

유니버셜 링크로를 사용하면 네이티브 앱 수정 없이 가능한것으로 파악되어서요

카카오톡 공유하기 - 개발 가이드: iOS 링크

iOS 앱의 경우, 유니버셜 링크가 호출되었을 때는 별도 처리 없이 앱 실행이 가능하지만, 커스텀 URL 스킴이 호출된 경우 해당 URL을 웹뷰에서 open(_ url:) 메서드를 호출하여 앱을 실행해야 합니다.

혹시, 네이티브 앱 수정없이 유니버셜 링크를 통해 카카오톡 공유하기를 사용하는 방법이 있을까요?

아!! JS SDK V2가 어제 배포되었는데요.

V1과 달리 V2에서는 카카오톡 공유 기능의 사용자 동선 개선을 위한 iOS Universal Links 도입되었습니다.
한번 사용해보시겠어요?

JavaScript | Kakao Developers JavaScript

안녕하세요 JS SDK V2 를 적용해보았습니다만 유니버셜 링크를 통한 공유가 제대로 작동하지 않는것 같아서요.

혹시, JS SDK V1을 사용하는 경우 iOS는 네이티브 앱의 어느부분을 수정하면 되는지 혹시 가이드를 주실 수 있으신가요?

JS SDK V2 는 저도 하이브리드앱 테스트를 좀 해보겠습니다.

JS SDK V1 카카오톡 공유하기에서 카카오톡 앱 호출은 아래내용 참고 부탁드려요.

JavaScript | Kakao Developers JavaScript

@haruholic cc. @woody.ho @holden.joo

안녕하세요.

테스트용 iOS 하이브리드앱을 만들어 디벨로퍼스 데모페이지의 JS SDK V2 카카오톡 공유하기 실행해봤는데요.
별도의 하이브리드앱내 코드 추가없이 카카오톡을 띄워 공유하는 부분 잘 처리되는 것을 확인했습니다.

JS SDK V2 를 적용해보았습니다만 유니버셜 링크를 통한 공유가 제대로 작동하지 않는것 같아서요.

혹시, 제대로 작동하지 않는 어떤 증상이 있었는지 알 수 있을까요?

좋아요 1