문의 시, 사용하시는 SDK 버전 정보와 디벨로퍼스 앱ID를 알려주세요.
SDK 버전 2.7.4, 디벨로퍼스 앱ID 1196262 입니다.
로컬 develop 환경에서는 카카오톡 공유하기 기능이 정상적으로 동작하고, 따로 로컬에서 빌드한 파일에서도 카카오톡 공유하기 기능이 동작합니다. 그런데 https환경에 배포하여 해당 기능을 실행하니, 아래 이미지와 같이 Kakao.init: App key must be provided
오류가발생합니다.
window.Kakao.init 실행 직전에 console.log로 찍어본 결과, 앱 키의 값이 정상적으로 출력됨 및 string타입으로 정상적으로 나타나는 것을 확인했습니다.
다음은 SDK를 불러오는 코드입니다.
const KAKAO_SHARE_KEY = process.env.REACT_APP_WWWM_FE_KAKAO_API_KEY_SHARE;
useEffect(() => {
const script = document.createElement(“script”);
script.src = “https://developers.kakao.com/sdk/js/kakao.js”; // 카카오톡 SDK
script.async = true;
document.body.appendChild(script);
return () => {
document.body.removeChild(script); // return으로 제거
};
}, );
다음은 카카오톡 공유하기 함수 전문입니다.
//카카오톡 공유
const KakaoShare = async() => {
if (window.Kakao === undefined) {
return;
}
// console.log("카카오 앱키: ", KAKAO_SHARE_KEY);
// console.log(typeof KAKAO_SHARE_KEY);
window.Kakao.init(KAKAO_SHARE_KEY);
// if (!window.Kakao.isInitialized()) {
// window.Kakao.init(KAKAO_SHARE_KEY);
// }
window.Kakao.Link.sendDefault({
objectType: ‘feed’,
content: {
title: ‘언제볼까?’,
description: ‘약속 잡기 힘든 시람들이 만든, 더 많은 만남을 위한 서비스’,
imageUrl: ‘https://ifh.cc/g/ccKapj.jpg’,
link: {
mobileWebUrl: shareString,
webUrl: shareString,
},
},
buttons: [
{
title: ‘참여하기’,
link: {
mobileWebUrl: shareString,
webUrl: shareString,
},
},
],
});