--- url: /api-sdk/sdk/kakao-js.md description: 게임플레이 파트너사가 카카오 로그인·카카오싱크와 카카오톡 공유를 연동하기 위한 카카오 JS SDK 설치와 초기화 --- # 카카오 JS SDK 카카오 JS SDK는 카카오디벨로퍼스에서 제공하는 웹용 SDK입니다. 게임플레이 파트너사는 카카오 로그인·카카오싱크의 사용자 인증과 동의 흐름, 카카오톡 공유 기능을 연동할 때 이 SDK를 설치하고 초기화해야 합니다. 이 문서는 **게임플레이 연동에 필요한 부분만** 다룹니다. SDK 버전 목록·`integrity` 값·브라우저 지원 범위처럼 자주 바뀌는 정보는 카카오디벨로퍼스가 정본이며, 이 페이지에 옮겨 적지 않습니다. 설치 전 전체 흐름은 [카카오디벨로퍼스 시작하기 가이드](https://developers.kakao.com/docs/ko/javascript/getting-started)를 참고하세요. 사용자 인증과 동의 흐름은 [카카오싱크 API](/api-sdk/kakaosync/rest-api)를 참고하세요. 공유 메시지를 구성하고 호출하는 방법은 [공유 설정](/docs/share/settings)을 참고하세요. ::: info 신규 연동이라면 [게임플레이 JS SDK](/api-sdk/sdk/gameplay-js/)가 카카오 JS SDK 를 내부에서 로드하므로 `Gameplay.*` 호출만으로 로그인·공유를 처리할 수 있습니다. 이 문서는 카카오 JS SDK 를 **직접** 연동하는 방식입니다. 두 방식을 동시에 구성하는 것은 권장하지 않습니다. 자세한 내용은 [SDK 연동 방식 선택](/api-sdk/sdk/)을 참고하세요. JavaScript 키 발급은 방식과 무관하게 파트너사가 직접 진행합니다. ::: ## 사전 준비 설치 전에 아래 세 가지를 먼저 확인합니다. | 항목 | 확인 위치 | 비고 | | --- | --- | --- | | JavaScript 키 | **\[앱] > \[플랫폼 키] > \[JavaScript 키]** | 파트너사 앱의 JavaScript 키를 사용합니다. 어드민 키를 쓰지 않습니다. [앱 키 확인](https://developers.kakao.com/docs/ko/app-setting/app#javascript-key) | | `integrity` 값 | [카카오 JS SDK 다운로드](https://developers.kakao.com/docs/ko/javascript/download) | SDK 버전과 짝이 맞는 값을 복사합니다 | | JavaScript SDK 도메인 | **\[앱] > \[플랫폼 키] > \[JavaScript 키] > \[JavaScript SDK 도메인]** | 등록한 도메인에서만 SDK 가 동작합니다 | | 제품 링크 도메인 | **\[앱] > \[제품 링크 관리] > \[웹 도메인]** | 게임플레이 도메인 `https://gameplay.kakao.com` 을 등록합니다 | ## SDK 설치 `` 에 SDK 스크립트를 추가합니다. 게임플레이 공유 연동은 **`2.8.0` 이상**을 요구합니다. ```html ``` `{버전}` 과 `integrity` 는 [디벨로퍼스 다운로드 페이지](https://developers.kakao.com/docs/ko/javascript/download)에서 복사합니다. 두 값은 **짝이 맞아야** 합니다. 버전만 올리고 `integrity` 를 그대로 두면 브라우저가 무결성 검증에 실패해 SDK 가 로드되지 않습니다. ## 초기화 파트너사 앱의 JavaScript 키로 초기화합니다. 카카오 로그인·카카오싱크 또는 카카오톡 공유 기능을 호출하기 전에 한 번만 실행하면 됩니다. ```ts declare global { interface Window { Kakao: { init(appKey: string): void; isInitialized(): boolean; }; } } if (!window.Kakao.isInitialized()) { window.Kakao.init('JAVASCRIPT_KEY'); } ``` `isInitialized()` 로 감싸면 SPA 에서 라우팅이 반복돼도 중복 초기화를 피할 수 있습니다. ## 전체 예제 ```html ``` 초기화 이후 카카오 로그인·카카오싱크 연동에는 `Kakao.Auth.authorize()`를, 카카오톡 공유에는 `Kakao.Share.sendCustom()`을 사용합니다. 인증과 동의 흐름은 [카카오싱크 API](/api-sdk/kakaosync/rest-api)를, 템플릿 ID·`templateArgs`·`pickerSettings` 구성은 [공유 설정: 구현 상세 안내](/docs/share/settings#구현-상세-안내)를 참고하세요. ## 참고 문서 * [공유 설정](/docs/share/settings): 게임플레이 공유 템플릿과 호출 방법 * [단축 URL 생성](/api-sdk/share/short-url): 공유 버튼에 넣을 단축 URL 발급 * [카카오 JS SDK 시작하기](https://developers.kakao.com/docs/ko/javascript/getting-started): 브라우저 지원 범위, 플랫폼 등록 절차 * [카카오 JS SDK 다운로드](https://developers.kakao.com/docs/ko/javascript/download): 버전별 CDN 주소와 `integrity` 값 * [카카오톡 공유 JavaScript 가이드](https://developers.kakao.com/docs/ko/kakaotalk-share/js-link) * 기술 문의 — [카카오디벨로퍼스 데브톡](https://devtalk.kakao.com/c/game-play/353)