Skip to main content

Web Settings

Web Settings​

React Native Kakao provides the same level of developer experience on Native and Web platforms.

Refer to the Kakao SDK Documentation for setup details.

Install Kakao JavaScript SDK​

Install the latest Kakao SDK from the Download page by adding it to the head of index.html.

<!DOCTYPE html>
<html>
<head>
...
<script src="https://t1.kakaocdn.net/kakao_js_sdk/{{Version}}/kakao.min.js"
integrity="{{integrity}}"
crossorigin="anonymous"></script>
</head>

<body>
...
</body>
</html>

tip

In the Expo environment, you can customize index.html using the npx expo customize command.

Expo Documentation

Register Platform in Kakao Console​

feat1

Go to the platform tab and add your site domain.

Web platform limits​

Supported API responses use the same field names and value types as native APIs, including Unix timestamps in seconds and successful receiver UUID arrays. Browser and Kakao SDK limits still apply:

APIWeb behavior
loginRedirects to web.redirectUri; exchange the code with issueAccessTokenWithCodeWeb, then call setAccessTokenWeb.
isKakaoTalkLoginAvailable / getKeyHashAndroidReturn false / undefined; these native capabilities cannot be detected on web.
Friend pickerOpens a popup. mode, viewAppearance, and orientation are native-only options.
Channel URL APIsReturn or open the channel's add/chat URL. Call openers from a user interaction; blocked popups reject with Package-Assertion.
navigateTo / shareToReturn false on desktop. On mobile web, true means the SDK launch request was made; browser APIs cannot confirm app installation or launch success.
Navi optionsThe JS SDK controls installation fallback; openWebInstallUrlIfNaviAppNotAvailable is native-only. shareTo forwards the destination and coordinate type, without via points or route-planning options.

About Web API​

The internal implementation of Web APIs may differ from Android and iOS.

API responses are consistent across platforms and names are identical, but some APIs or arguments are specific to Web.

For example, redirectUri is a Web-specific login argument.

APIs used or required only on Web have function names ending in Web.

For example, User.setAccessTokenWeb() is a Web-specific API.

All Web-specific arguments are passed in the function's web field.

The core package's SDK initialization function is shown below.

export async function initializeKakaoSDK(
appKey: string,
// eslint-disable-next-line @typescript-eslint/no-unused-vars
options: { web?: { javascriptKey: string; restApiKey: string } },
)

This function receives the required Web-specific parameters in a web object.

warning

If your app does not support Web, you do not need to set the web argument and should not call APIs ending in Web.

On web, SDK initialization requires web.javascriptKey and web.restApiKey, and login requires web.redirectUri. Other supported APIs use their documented defaults.