일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Behavior
- LiveData
- Navigation
- recyclerview
- AppBarLayout
- DataBinding
- Android
- activity
- 알림
- onMeasure
- lifecycle
- 코틀린
- BOJ
- onLayout
- CollapsingToolbarLayout
- 알고리즘
- CoordinatorLayout
- kotlin
- ViewModel
- notification
- Coroutine
- sqlite
- hilt
- CustomView
- Algorithm
- 안드로이드
- 백준
- HTTP
- View
- room
- Today
- Total
목록전체 글 (212)
개발일지

Activity 사이에서 결과를 받을 수 있는 startActivityResult, onActivityResult 등이 deprecated되면서 새로운 API인 ActivityResultContract가 생겼다. 사용법 registerForActivityResult를 통해 ActivityResultContract를 등록하고 callback 함수를 재정의한다. => 활성상태 (onResume가 호출되어 Activity가 보이는 상태)에서 등록할 시 Exception이 발생한다. onCreate로 선언하거나 변수로 선언하자. private val activityResult = registerForActivityResult(ActivityResultContracts.StartActivityForResult()..
www.acmicpc.net/problem/2449 2449번: 전구 입력의 첫 번째 줄에는 전구의 수를 나타내는 양의 정수 N과 전구가 표현할 수 있는 색의 수 K가 주어진다. 단, N은 1이상 200이하의 정수이며, K는 1이상 20이하의 정수이다. 두 번째 줄에는 N개 전 www.acmicpc.net 접근 1) dp[left][right][color] 재귀함수로 구간에 특정 color로 색칠하는 방법을 고민했다. => 실패 이유는 모르겠다. 2) dp[left][right] 하지만 구간을 나누고 특정 color로 색칠할 필요가 없었다. => left의 색이나 right의 색으로 칠하는 것이 자명하기 때문이다. dp[left][right] = min(dp[left][i] + dp[i + 1][righ..
false

1. 프로젝트 등록 Naver Developer에 프로젝트를 등록하여 API Key를 받는다. developers.naver.com/apps/#/register?api=nvlogin 애플리케이션 - NAVER Developers developers.naver.com 2. Gradle 설정 Dependency compile ('com.naver.nid:naveridlogin-android-sdk:4.2.6') 3. Key 등록하기 Naver Developer에서 제공받은 Key를 string.xml에 입력한다. glttGD4shdbN2GSF94OB jBDdCtOOeR 4. OAuth 초기화하기 Login을 진행하기 전에 초기화 단계가 필요하다. OAuthLogin.getInstance().init(this..

1. 프로젝트 등록 developers.kakao.com/console/app 카카오계정 로그인 여기를 눌러 링크를 확인하세요. accounts.kakao.com 2. Gradle 설정 build.gradle(Project) allprojects { repositories { google() jcenter() // Kakao maven { url 'https://devrepo.kakao.com/nexus/content/groups/public/' } } } build.gradle(Module) dependency Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. developers.k..

Google의 OAuth를 통해 사용자 인증을 얻고 People API를 통해 사용자의 개인 정보를 얻을 수 있다. rkdxowhd98.tistory.com/168 Android in A..Z - OAuth (Google) Google API를 사용해서 Google인증과 Google OAuth로 얻은 idToken값으로 People API를 사용하여 사용자의 다양한 정보를 얻을 수 있다. OAuth를 사용하면 프로젝트 자체에서 회원관리 기능을 구현할 필요가 없 rkdxowhd98.tistory.com 1. OAuth 클라이언트 ID 등록하기 (People과 연동할 수 있는 웹 에플리케이션 등록하기) * 웹 에플리케이션으로 등록한다. 2. API Key 발급하기 3. People API 신청하기 4. Pe..
Android에서 jar파일을 추가하거나 dependency를 추가할 때 이런 오류가 종종 발생한다. Gradle에서 패키징 옵션을 수정하자. android { packagingOptions { exclude 'META-INF/DEPENDENCIES' } }

Google API를 사용해서 Google인증과 Google OAuth로 얻은 idToken값으로 People API를 사용하여 사용자의 다양한 정보를 얻을 수 있다. OAuth를 사용하면 프로젝트 자체에서 회원관리 기능을 구현할 필요가 없고 Google의 AccessToken으로 사용자의 정보를 받아오기 때문에 기존 ID/Password방식보다 보안이 좋다. 또한 사용자 입장에서 한번의 클릭으로 쉽게 로그인할 수 있는 이점이 있다. 1. Google API 콘솔 프로젝트 구성 만들기 console.cloud.google.com/ Google Cloud Platform 하나의 계정으로 모든 Google 서비스를 Google Cloud Platform을 사용하려면 로그인하세요. accounts.google..