본문 바로가기

Android

(131)
[Android] toml 파일을 사용하여 Gradle을 개선해보자. 회사 동료와 이야기를 하던 도중, python의 pyproject.toml이라는 것을 알게 되었고 확인해 보니 프로젝트의 빌드 시스템을 정의하는 파일이었다.그리고 toml에 대해서 확인해보니 android 환경의 gradle에서도 적용이 가능하였고, 알고 보니 많은 프로젝트들에서 toml 파일을 사용하여 gradle의 의존성을 관리하고 있다는 것을 알게 되었다. 사용할 수 있다는 것을 알게되었으니, 당연히 한번 적용해봐야 하지 않겠는가?라는 생각을 가지고, 샘플 프로젝트의 gradle에 사용되는 의존성을 toml 파일을 사용하여 관리할 수 있도록 수정해 보았고, 그 과정에 대해 간단하게 글을 작성해 보도록 하겠다.우선,가장 기본적인 toml이란 무엇인가 부터 알아보자.toml이란,Tom's Obvious..
[Android] Jetpack Compose 환경에서 MVI Pattern 구현하기 공부를 진행하다가 MVI Pattern에 대한 내용을 접하게 되었다.현재 진행하고 있는 프로젝트들은 MVVM 기준으로 구조가 잡혀있기 때문에 MVI Pattern은 사용하지 않고 있었는데, 이전 아키텍처를 공부할 때 샘플을 만들어 본 이후로 MVI Pattern으로 구현을 해보지 않았다는 것을 깨닫게 되었다. 더군다나, Jetpack Compose 환경에서는 MVI Pattern을 사용한 적이 없어서 이번 기회에 간단한 샘플을 만들어 구현해보고자 하였다.우선,MVI Pattern이 무엇인지부터 다시 복기해 보도록 하자.2022.04.30 - [Android/Architecture] - [Android] MVI Pattern?필자가 2년도 더 전에 아키텍처를 공부하면서 작성했던 글이다. 자세한 설명은 해당..
[Android] kapt에서 ksp로 마이그레이션 하는 방법 및 차이점 비교. ksp는 출시한 지 몇 년 된 것으로 알고 있었는데 라이브러리를 사용하고 있는 내가 kapt와 ksp에 대한 차이를 명확하게 모르고 있다는 것을 인지하고, 그것에 대해 알아보기 위해 공부를 해야겠다고 느꼈다. 따라서,kapt와 ksp에 대해 알아보고, 사용하고 있는 라이브러리를 마이그레이션 하는 방법, 그리고 어떠한 차이가 있는지에 대해 알아보고자 한다.우선 kapt가 무엇인지 알아보자. kapt란,Kotlin Annotation Processing Tool의 약자로 자바의 어노테이션 프로세서를 코틀린에서 사용할 수 있게 해주는 도구라고 한다. kapt는 자바에서 사용되는 어노테이션 프로세서를 코틀린에서 사용할 수 있게 해 준다는데, 이게 무슨 말인가 싶을 것이다.간단하게 생각하면@Entity와같이 작성..
[Cursor] Cursor AI IDE를 사용한 Android 개발 - rules 사용. 필자가 회사에서 Cursor를 사용한 개발을 진행하면서같은 팀 동료와 어떻게 Cursor를 사용해야 더 효율성 높은 개발을 할 수 있고, 어떻게 해야 우리가 원하는 결과를 얻을 수 있는지에 대해 이야기를 자주 진행한다. 이야기를 할 때 가장 먼저 나왔던 내용은 어떻게 설정을 미리 해두면 우리가 나중에 사용할 때 최소한의 입력으로 원하는 결과를 얻을 수 있는 것인가?에 대한 내용이다. 되게 긴 문장이지만, 간단하게 한번 세팅하고 편하게 높은 정확성의 결과를 계속해서 받고 싶다는 것으로 cursor IDE를 사용하는 사람이라면 누구든 이러한 목표를 가지고 접근을 했을 것이라고 생각한다. 이야기를 하다보면 다양한 실험할 수 있는 방법에 대해 이야기가 나왔는데,그것들 중 Cursor IDE를 사용할 때 가장 기..
[Cursor] Android Studio와 함께 Cursor AI IDE를 사용하기 위한 사용법 및 기초 세팅 최근 필자가 회사에서 업무를 진행함에 있어서 Cursor AI를 사용하여 개발하는 것을 테스트하고 있다. 이미 예전부터 GPT나 Claude 등을 사용하며 AI를 사용한 개발을 하고 있었는데, AI를 사용한 IDE 자체를 사용하는 것은 처음이라 그것의 사용하는 방법이나 팁과 같은 것들을 알게 된다면 간단하게나마 남겨두려고 한다. 이번 글에서는 Cursor IDE를 설치하고, Android Studio와 함께 사용하기 위해서 설정해야하는 아주 기본적인 세팅에 대하여 작성해보고자 한다. *본 게시글의 내용은 공부하고 적용해보면서 알게 된 정보를 공유하기 위한 것이므로, 정확하지 않은 정보가 포함되어 있을 가능성이 있습니다. "확실한 정보가 아닐 수 있음"을 인지하고 글을 읽어주시면 감사하겠습니다.우선, Cu..
[Android] 사용성 높은 StickyHeader 구현하기 Compose를 통해 다양한 UI를 그리다 보면, Header라는 이름의 UI를 많이 그려봤을 것이다.그중에서 Scroll이 가능한 영역에서 Header를 구현할 때 StickyHeader를 많이 사용했을 텐데, 필자는 최근에 기본적인 StickyHeader가 아닌 UI가 변경되면서 다른 형태의 Header를 구현해야 했다. 따라서 기본적인 StickyHeader를 사용하는 것이 아닌 다른 형태의 Custom Header를 구현하는 법을 찾아보았고,생각보다 자주 쓰일 수 있을 것이며 한번 구현해 두면 쉽게 가져다 사용할 수 있는 Component라고 생각이 되었다. 간단하지만,StickyHeader와 더불어 Compose에서 제공하는 Component를 사용하여 구현하는 방법, 직접 Custom 하여 H..
[Android] Shimmer UI 구현하기 개발을 진행하면서 UI가 그려지기 위한 API의 응답을 기다리는 시간에 Loading Indicator를 통해 UI를 그려본 적이 있을 것이다. 단순히 로딩을 돌려서 그 시간을 기다리게 만들 수 있을 뿐 아니라, Shimmer를 사용하여 조금 더 자연스럽고 세련된(?) 로딩 화면을 만들 수 있다. 필자도 지금까지는 대부분 API 응답을 기다릴 때 Loading 애니메이션을 넣어주고 로딩이 끝나면 UI가 한 번에 그려지는 형태로 개발을 진행했었는데, 이번에 Shimmer를 사용하여 UI를 미리 그려주고 API Response가 오면 화면을 갱신하는 형태로 개발을 진행하게 되었다. 따라서, 간단하게 Shimmer를 구현하는 방법과 사용할 때 주의할 점에 몇 가지에 대해 작성해두고자 한다.우선,Shimmer가..
[Android] 개발자 계정 인증하기 약 반년전, 처음으로 개발자 계정을 생성하고 앱을 배포하는 과정을 글로 작성했었다.그리고, 8월달 쯤 개발자 계정을 인증하라는 경고가 받았고 9월 말이 다 되어서야 정상적으로 개발자 계정을 인증할 수 있었다.기존에는 9월까지 인증을 했어야 했으나, 맨 처음에 제출했던 서류가 부적합하다고 판단이 나왔고 그에 따른 인증 기간 연장을 통해 10월 중순까지로 미뤘었다. 이제서야 개발자 계정 인증이 되었으므로 그 과정도 간단하게 서술해보고자 한다.필자처럼 최근에 개발자 계정을 만들었다면, 이런 경고를 확인했을 것이다. 이게 갑자기 무슨소린가? 싶겠지만,곰곰히 생각해보면 개발자 계정을 만들 당시, 언제까지 인증을 하겠다. 라는 기간을 선택했던것 같은 기억이 스쳐지나갈 것이다.개발자 개정을 만들 때 제대로 된 사용자..