android

Android

[Android] Version Catalog

아키텍쳐를 공부하려고 안드로이드 샘플 프로젝트를 분석하고 있었다.안드로이드 공식 샘플로 유명한 "Now in Android"를 분석하고 있었는데 처음보는 내용을 발견했다.더보기Now in Android 구경하기 GitHub - android/nowinandroid: A fully functional Android app built entirely with Kotlin and Jetpack ComposeA fully functional Android app built entirely with Kotlin and Jetpack Compose - android/nowinandroidgithub.com Gradle 파일의 dependencies 선언부가 내가 알던 내용과 다르게 생겼었다.어떤 구조로 작성이 된 ..

Android

[Android] Serializable, Parcelable

안드로이드에서 액티비티와 같은 안드로이드 컴포넌트에 POJO 같은 데이터를 전달을 해야 할 때가 있다. 액티비티와 같은 안드로이드 컴포넌트들에 데이터를 전달하기 위해서는 반드시 인텐트를 통해 전달하게 된다. 이 때 데이터 객체를 전달할 수 있도록 직렬화 인터페이스로 Serializable과 Parceable을 제공한다. Serializable 자바 표준 인터페이스 중 하나로 안드로이드 SDK에 포함되어 있지 않다. 전달하고자 하는 데이터 클래스(POJO)에 Serializable 인터페이스를 구현만 하면 액티비티로 데이터를 전달할 준비가 된다. Java 더보기 import java.io.Serializable; public class CommunityListResponse implements Serial..

안드로이드 개발 이야기

토스 앱 분석기 (UX 심리학, 모션 등등 토스같은 앱 개발을 위한 추천 안드로이드 라이브러리)

OO처럼 만들어주세요 개발자나 디자이너들이 요구사항으로 위와 같은 말을 들으면 굉장히 당황한다. 요구사항대로 만들 수 있으면 좋겠지만 그렇지 못하는게 현실이다. 그래도 비슷하게 흉내라도 내야 퀄리티가 좋아지지 않겠는가! 이번에 UX 공부도 할 겸 토스 앱을 분석할 일이 생겨서 토스 앱을 분석하는 김에 작성해본다. 분석과 함께 사용할 수 있는(토스를 흉내낼 수 있는) 라이브러리와 기술들을 함께 소개해볼까 한다. 토스의 UX 심리학 먼저 토스 앱을 굉장히 잘 분석해놓은 글을 발견해서 첨부한다. 내 폰의 유일한 송금앱, 토스 [코드스테이츠 PMB 10기] 토스의 UX 심리학 | 간결함의 미학,TOSS 1. 송금할 때는, 토스 밖에 없지! 나를 사로잡은 토스의 UX 디자인 토스를 사용하다보면 어떻게 이렇게 간결..

안드로이드 개발 이야기

선언형 UI(Declarative UI)

1. 선언형 UI란? 한 정의에 따르면, 프로그램이 어떤 방법으로 해야 하는지를 나타내기보다 무엇과 같은지를 설명하는 경우에 "선언형"이라고 한다. 예를 들어, 웹 페이지는 선언형인데 웹페이지는 제목, 글꼴, 본문, 그림과 같이 "무엇"이 나타나야하는지를 묘사하는 것이지 "어떤 방법으로" 컴퓨터 화면에 페이지를 나타내야 하는지를 묘사하는 것이 아니기 때문이다. 이것은 전통적인 포트란과 C, 자바와 같은 명령형 프로그래밍 언어와는 다른 접근방식인데, 명령형 프로그래밍 언어는 프로그래머가 실행될 알고리즘을 명시해주어야 하는 것이다. 간단히 말하여, 명령형 프로그램은 알고리즘을 명시하고 목표는 명시하지 않는 데 반해 선언형 프로그램은 목표를 명시하고 알고리즘을 명시하지 않는 것이다. 여기서 중요한 내용을 간단..

Android

[Android] Paging3 Frame Drop Issue

페이징 라이브러리 사용 중 프레임 드랍 이슈를 겪게 되어 작성해본다. 문제점 페이징된 목록들을 스크롤 시 해당 에러를 출력하면서 프레임이 끊기며 스크롤 되는 문제가 발생했다. "Skipped 611 frames! The application maybe doing too much work on its main thread." 시행 착오 먼저 프레임 드랍과 함께 출력된 에러를 보고 메인 스레드에서 너무 많은 작업을 했다길래 페이징 데이터를 UI에 그리는 과정에서 너무 많은 UI 소스 때문에 과부하가 걸린다고 생각했다. (사실 이때부터 페이징 데이터를 로드하는 작업이 너무 많다고 알려주고 있었는데 다르게 생각해버렸다..) 그럴만도 한게 사진처럼 카드뷰 하나에 벡터 이미지와 받아오는 데이터들이 많기도 하고 제작..

Android

[Android] Hilt - Android DI Library

Hilt Hilt는 Google Dagger를 기반으로 만든 안드로이드 전용 DI 라이브러리다. 프로젝트에 Hilt를 적용하는 과정에서 Hilt에 대해 자세하게 알아보려고 한다. DI 라이브러리를 접해본 사람이라면, Dagger를 많이 들어봤을 것이다. 물론 안드로이드에서도 Dagger를 사용할 수 있고 실제로 가장 많이 사용되던 라이브러리였다. 왜 Hilt를 사용했는지 알아보기 전에 세가지 DI 라이브러리를 비교해보겠다. 안드로이드에서 사용하는 DI(Dependency Injection)는 Dagger, Koin, Hilt 세가지가 있다. Dagger 구글에서 개발된 의존성 주입 프레임워크, Java 기반 프로젝트에서 가장 많이 쓰이는 도구이다. 러닝 커브가 크지만 많은 사람들이 사용하는 만큼 안정성이..

Sangyoon98
'android' 태그의 글 목록