일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- ReactNaitve
- 서울
- MSSQL
- docker
- 수도권 근교
- Django
- react native
- 엑셀
- 함수
- synology
- apk
- Nas
- 나스
- 강릉
- react
- 리엑트
- 캠핑
- SQL
- 맛집
- 연곡해변
- 리액트
- reactnative
- 시놀로지나스
- 장고
- Excel
- Firebase
- 가상환경
- Expo
- 시놀로지
- 캠핑장
- Today
- Total
차근차근 생활 & 코딩
[React Native] RN - 카카오 로그인(kakao login) 구현 본문

안녕하세요.
이번시간에는 React Native 안드로이드 버전 카카오 로그인을 구현해 보도록 하겠습니다.
카카오 로그인 구현이 초보자들은 쉽지는 않으니 천천히 따라 해 보시길 바랍니다.
Android(안드로이드)
Step 1. 설치하기
yarn add @react-native-seoul/kakao-login
* 설치 후 바로 ReactNative를 실행하시면 오류가 발생할 수 있으니 설치 후 아래 순서대로 전부 작업 후 ReactNative를 실행하시길 권장합니다.
Step 2. 키해시 등록
아래 명령어를 입력을 통해 키해시 등록을 진행 하도록 합니다.
keytool -exportcert -alias androiddebugkey -keystore ./android/app/debug.keystore -storepass android -keypass android | openssl sha1 -binary | openssl base64
명령어 입력 후 cmd 창에 예를 들어 Xo8123214214215yr9iU= 같은 문자가 나타나게 됩니다.

키 해시를 사용하기 위하여 카카오 디벨로퍼 사이트에 접속합니다.
① 앱 설정에서 플랫폼을 선택하여 줍니다.
② 수정을 눌러 키해시를 변경 해보도록 하겠습니다.
③ 위에 CMD에서 확인됬던 키해시를 복사하여 붙여 넣어 줍니다.
④ 마지막으로 저장 버튼을 눌러 주시면 키 해시 등록이 완료 됩니다.

Step 3. 패키지명 등록 & 변경
./android/app/src/main/AndroidManifest.xml 경로에 있는 package= 어트리뷰트를 참조하여 수정하여 줍니다.


Step 4. AndroidManifest 파일 설정 변경
① ./android/app/src/main/AndroidManifest.xml 경로로 이동합니다.
② android:allowBackup="false"로 되어 있는 것을 android:allowBackup="true"로 변경해 주도록 합니다.

Step 5. Android SDK Repository 설정 추가
① ./android/build.gradle 경로로 이동합니다.
② 아래 코드를 추가해 주도록 하겠습니다.
kotlinVersion = '1.3.50'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion"
maven { url 'https://devrepo.kakao.com/nexus/content/groups/public/' }

* What went wrong:
The Android Gradle plugin supports only Kotlin Gradle plugin version 1.5.20 and higher.
The following dependencies do not satisfy the required version:
root project 'app' -> org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.50
* 위 내용과 같이 ReactNative Run 실행 후 경고가 발생하시면 kotlinVersion = '1.5.20' 로 변경하시면 됩니다.
Step 6. Strings 파일 설정 변경
① ./android/app/src/main/res/values/strings.xml 경로로 이동합니다.
② 아래 코드를 추가 합니다.
* your_app_key는 삭제하시고 삭제한 부분에 네이티브 앱 키 코드를 삽입해 주시며 됩니다.
<string name="kakao_app_key">your_app_key</string>

Step 7. Redirect URI 설정
① ./android/app/src/main/AndroidManifest.xml 경로로 이동합니다.
② 아래 코드를 삽입하도록 합니다.
* 카카오 디벨롭스에 나와있는 네이티브 앱 키 코드를 삽입해 주시면 됩니다.
ex) android:scheme="kakao1232142142152316236"
<activity android:name="com.kakao.sdk.auth.AuthCodeHandlerActivity">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<!-- Redirect URI: "kakao{NATIVE_APP_KEY}://oauth“ -->
<data android:host="oauth"
android:scheme="kakao{카카오 네이티브 앱 key를 입력해주세요}" />
</intent-filter>
</activity>


Step 8. 로그인 코드 작성
app.js에 간단한 sample code를 작성해 보았습니다.
import {StyleSheet, Text, View, Button} from 'react-native';
import React from 'react';
import {
KakaoOAuthToken,
KakaoProfile,
getProfile as getKakaoProfile,
login,
logout,
unlink,
} from '@react-native-seoul/kakao-login';
export default function App() {
const signInWithKakao = async (): Promise<void> => {
const token: KakaoOAuthToken = await login();
setResult(JSON.stringify(token));
};
const signOutWithKakao = async (): Promise<void> => {
const message = await logout();
setResult(message);
};
const getKakaoProfile = async (): Promise<void> => {
const profile: KakaoProfile = await getProfile();
setResult(JSON.stringify(profile));
};
const unlinkKakao = async (): Promise<void> => {
const message = await unlink();
setResult(message);
};
return (
<View>
<Button title="로그인" onPress={signInWithKakao} />
</View>
);
}

Step 9. 결과보기

포스팅이 도움 되셨다면, 커피 한잔 후원해주세요! 더 좋은 포스팅 작성에 큰 힘이 됩니다.
[React Naitve] RN - Firebase 구글 로그인(Google Login) 구현하기
안녕하세요. 이번 시간에는 파이어베이스 구글 로그인에 대해 알아보도록 하겠습니다. 내용이 다소 복잡 할 수 있으니 천천히 따라 해보시면 좋을 듯합니다. Step1. Firebase 세팅 ① 프로젝트 추가
ssilook.tistory.com
네이버 로그인(Naver Login)
[React Native] 리액트 네이티브 - 안드로이드 네이버 로그인하기(Android Naver Login)
안녕하세요. 이번시간에는 네이버 로그인 방법에 대해서 알아보도록 하겠습니다. 긴 내용이니 천천히 따라하시면 됩니다. Step. 1 / React Native 앱 설치하기 npx react-native init test1 Step. 2 / 패키지 설
ssilook.tistory.com

'IT > REACT NATIVE(리액트 네이티브)' 카테고리의 다른 글
[React Native] RN - 토글 스위치(Toggle switch) 구현하기 (0) | 2022.03.07 |
---|---|
[React Native] RN - 검색 자동 완성 기능 구현하기 (0) | 2022.03.04 |
[React Native] RN - Firebase Admob(파이어베이스 애드몹) 광고 (0) | 2022.02.09 |
[React Native] RN - APK 추출하기 2편(명령어로 apk 생성하기) (0) | 2022.01.26 |
[React Native] RN - APK 추출하기 3편(AAB 파일 생성) (2) | 2022.01.26 |