[Feat] #9 - 카카오 SDK 로그인 연동 검증 - #10
Merged
Merged
Conversation
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
There was a problem hiding this comment.
Pull request overview
카카오 SDK(v2-user 2.24.0) 연동을 추가하고, 앱 첫 화면에서 카카오 로그인(Talk 우선, 불가 시 Account)으로 access token 획득까지 검증할 수 있게 구성한 PR입니다.
Changes:
- Kakao Maven/SDK 의존성 추가 및
NATIVE_APP_KEY를 BuildConfig/Manifest로 주입 - Application/Manifest에 Kakao 초기화 및 Redirect URI(+ Talk package visibility) 설정
- 최소 로그인 화면 + ViewModel +
core.auth래퍼로 로그인 성공/취소/실패 UI 상태 및 debug Logcat 출력 구현
Reviewed changes
Copilot reviewed 16 out of 16 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| docs/templates/plan.md | 계획 문서 템플릿 추가 |
| docs/plans/9-kakao-sdk-verification.md | #9 카카오 SDK 검증 계획 문서 추가 |
| android/settings.gradle.kts | Kakao Maven 저장소 추가 |
| android/gradle/libs.versions.toml | Kakao SDK 버전/라이브러리 등록 |
| android/app/build.gradle.kts | NATIVE_APP_KEY 로드 및 BuildConfig/Manifest 주입, SDK 의존성 추가 |
| android/app/src/main/AndroidManifest.xml | Talk queries + Redirect(AuthCodeHandlerActivity) 등록 |
| android/app/src/main/res/values/strings.xml | 카카오 로그인 버튼 문자열 추가 |
| android/app/src/main/java/com/youz2me/livith/LivithApplication.kt | KakaoSdk.init 호출 추가 |
| android/app/src/main/java/com/youz2me/livith/core/di/AuthModule.kt | KakaoAuthClient Hilt 바인딩 추가 |
| android/app/src/main/java/com/youz2me/livith/core/auth/KakaoAuthClient.kt | Kakao 로그인 래퍼 인터페이스 추가 |
| android/app/src/main/java/com/youz2me/livith/core/auth/KakaoAuthClientImpl.kt | Talk/Account 로그인 구현 및 결과 매핑 추가 |
| android/app/src/main/java/com/youz2me/livith/core/auth/KakaoLoginResult.kt | 로그인 결과 sealed 타입 추가 |
| android/app/src/main/java/com/youz2me/livith/presentation/navigation/LivithNavHost.kt | startDestination을 로그인으로 변경 |
| android/app/src/main/java/com/youz2me/livith/presentation/login/LoginScreen.kt | 최소 로그인 UI(버튼/로딩/메시지) 추가 |
| android/app/src/main/java/com/youz2me/livith/presentation/login/LoginViewModel.kt | 로그인 실행/상태 관리 및 debug 로그 추가 |
| android/app/src/main/java/com/youz2me/livith/presentation/login/LoginUiState.kt | 로그인 화면 UI 상태 모델 추가 |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+17
to
+19
| val nativeAppKey = localProperties.getProperty("NATIVE_APP_KEY") | ||
| ?.takeIf { it.isNotBlank() } | ||
| ?: error("NATIVE_APP_KEY is missing or blank in android/local.properties") |
Comment on lines
+9
to
+12
| override fun onCreate() { | ||
| super.onCreate() | ||
| KakaoSdk.init(this, BuildConfig.NATIVE_APP_KEY) | ||
| } |
| error is ClientError && error.reason == ClientErrorCause.Cancelled -> | ||
| KakaoLoginResult.Canceled | ||
| error != null -> | ||
| KakaoLoginResult.Failure(error.message ?: "Kakao login failed") |
| !accessToken.isNullOrBlank() -> | ||
| KakaoLoginResult.Success(accessToken) | ||
| else -> | ||
| KakaoLoginResult.Failure("Kakao login returned empty token") |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
v2-user2.24.0) 연동으로 access token 획득까지 검증한다. 백엔드·세션·온보딩·Figma UI는 범위 밖이다.NATIVE_APP_KEY를local.properties→ BuildConfig/Manifest로 주입하고, Talk→Account 로그인·최소 로그인 화면·debug Logcat 확인을 구현했다.docs/plans/9-kakao-sdk-verification.mdCloses #9
Architecture note (#9 한시 예외)
core.auth.KakaoAuthClient직행을 허용했다.presentation → domain ← data로 복구하고,core래퍼는 data가 사용하도록 옮긴다.완료 기준
v2-user의존성 추가local.properties의NATIVE_APP_KEY→ BuildConfig/Manifest 주입 (키 값 미커밋)LivithApplication에서KakaoSdk.initkakao${NATIVE_APP_KEY}://oauth) Manifest 등록 (AuthCodeHandlerActivity)KakaoSdkVerify, DEBUG only, 저장·서버 전송 없음)core, View에서 SDK 직접 호출 없음cd android && ./gradlew assembleDebug성공 (실기기/에뮬에서 로그인 성공 확인)Test plan
cd android && ./gradlew assembleDebugKakaoSdkVerifygit status에local.properties/키 값 없음Made with Cursor