| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- 안드로이드 유닛 테스트 예시
- 플러터 설치 2022
- Rxjava Observable
- 서비스 vs 쓰레드
- ar vr 차이
- 멤버변수
- 객체
- rxjava disposable
- 안드로이드 레트로핏 crud
- rxjava hot observable
- rxjava cold observable
- ANR이란
- 안드로이드 라이선스
- 큐 자바 코드
- android retrofit login
- 2022 플러터 안드로이드 스튜디오
- jvm 작동 원리
- jvm이란
- 스택 큐 차이
- 안드로이드 유닛테스트란
- 서비스 쓰레드 차이
- android ar 개발
- 안드로이드 os 구조
- 안드로이드 유닛 테스트
- 안드로이드 레트로핏 사용법
- 안드로이드 라이선스 종류
- 클래스
- 2022 플러터 설치
- 스택 자바 코드
- 자바 다형성
- Today
- Total
목록Android (404)
나만을 위한 블로그
※ 모든 코드는 예시 코드기 때문에 실제로 사용하려면 반드시 리팩토링 후 사용한다※ 컴포즈 안 쓴다 이전 포스팅에서 이어지는 글이다. https://onlyfor-me-blog.tistory.com/1121 [Android] Hilt + Retrofit + Flow + Coil + 멀티 모듈 구조 프로젝트 - 1 -※ 모든 코드는 예시 코드기 때문에 실제로 사용하려면 반드시 리팩토링 후 사용한다※ 컴포즈 안 쓴다 몇 차례에 걸쳐 실제 api를 사용하는 간단한 멀티 모듈 안드 프로젝트를 만드는 과정을onlyfor-me-blog.tistory.com photos, todos 버튼을 눌렀을 때의 동작들도 마저 구현한다. 먼저 ApiService에 엔드포인트 2개를 추가한다. import com.example...
※ 이 포스팅은 윈도우 기준으로 작성됐다. 그러나 맥이라고 별 다를 건 없다 안드로이드 스튜디오가 이미 설치돼 있다면 몇 분만 투자해서 커서 ai를 연동할 수 있어서 어떻게 하는지 정리한다.참고로 커서는 처음 시작 시 프로 모드를 14일 사용할 수 있게 해 준다. 25.01.01 기준으로 커서 ai의 설정 화면에 들어가면 아래와 같이 프로 모드 사용 기간과 사용량을 볼 수 있다. 일단 다운로드부터 받는다. https://www.cursor.com/ Cursor - The AI Code EditorBuilt to make you extraordinarily productive, Cursor is the best way to code with AI.www.cursor.com 다운로드한 후 설치, 실행하면 ..
※ 모든 코드는 예시 코드기 때문에 실제로 사용하려면 반드시 리팩토링 후 사용한다※ 컴포즈 안 쓴다 몇 차례에 걸쳐 실제 api를 사용하는 간단한 멀티 모듈 안드 프로젝트를 만드는 과정을 포스팅하려고 한다. 사용할 라이브러리는 제목에 써둔 것들 정도다.예제 프로젝트기 때문에 최대한 가볍게 구성했다. 절대 귀찮아서 이렇게 만든 게 아니다 어디까지나 이런 식으로 멀티 모듈 형태와 클린 아키텍처로 짤 수 있다는 걸 보여주기 위한 시리즈다. 이 포스팅은 아래 포스팅을 바탕으로 진행한다. https://onlyfor-me-blog.tistory.com/1052 [Android] 멀티 모듈 프로젝트 구성하고 hilt 적용하기지금까지 app 모듈 안에 data, domain, presentation 폴더를 만들고 그..
이 포스팅에선 Compose를 사용해 리스트뷰를 만들고 아이템을 선택하면 체크상태를 변경해 표시하는 예제를 확인한다. 전체 코드는 아래 영상을 참고했다. https://www.youtube.com/watch?v=pvNcJXprrKM 전체 코드는 아래와 같다. import androidx.compose.foundation.clickableimport androidx.compose.foundation.layout.Arrangementimport androidx.compose.foundation.layout.Rowimport androidx.compose.foundation.layout.fillMaxSizeimport androidx.compose.foundation.layout.fillMaxWidthimpo..
※ 모든 코드는 예제기 때문에 실제로 사용하려면 리팩토링, 예외처리를 추가한다 ※ 서버 통신 없이 앱에 저장된 이미지를 사용해 구현했다 이번엔 컴포즈를 사용해서 정해진 이미지들을 계속해서 표시하는 무한 캐러셀 예제를 확인한다.실행하면 아래처럼 작동한다. 코드는 아래와 같다. import androidx.compose.foundation.Imageimport androidx.compose.foundation.layout.fillMaxSizeimport androidx.compose.foundation.lazy.LazyRowimport androidx.compose.foundation.lazy.itemsimport androidx.compose.foundation.lazy.rememberLazyListSt..
※ 모든 코드는 예시 코드기 때문에 실제로 쓰려면 반드시 리팩토링, 예외처리를 추가한다 위치 정보를 활용하는 기능 구현 중 액티비티, 프래그먼트 곳곳에 위치 권한을 요청하고 허용, 거절 상태에 따라 분기되는 함수가 보였다.Base 클래스에 빼자니 필요없는 화면도 있어서 아닌 거 같고, 뷰모델에 박아두고 쓰자니 자유롭게 재사용할 수 없는 느낌이라 아닌 거 같아서 이리저리 시험해보다 괜찮아 보이는 방법을 찾은 것 같아 포스팅한다. 코드부터 본다. import android.Manifestimport android.content.Contextimport android.content.pm.PackageManagerimport androidx.core.app.ActivityCompatimport com.googl..
※ 모든 코드는 예시 코드기 때문에 실제로 사용하려면 반드시 리팩토링하고 프로젝트에 맞는 예외처리를 추가해야 한다 이 포스팅은 아래의 영상을 바탕으로 작성했다. https://www.youtube.com/watch?v=Q0Njj-rfEXE 이미지 압축은 구글링해 보면 다양한 방법으로 구현할 수 있다. 아래 코드도 그 예시 중 하나일 뿐이니 이렇게도 구현할 수 있다 치고 넘어가면 좋을 듯하다.먼저 이미지 압축을 담당하는 ImageCompressor의 구현은 아래와 같다. import android.content.Contextimport android.graphics.Bitmapimport android.graphics.BitmapFactoryimport android.net.Uriimport android..
이전 포스팅에서 공유 요소 전환 구현에 사용한 코드에 쓰인 개념들을 확인한다.먼저 SharedTransitionLayout부터 확인한다. https://developer.android.com/reference/kotlin/androidx/compose/animation/package-summary#SharedTransitionLayout(androidx.compose.ui.Modifier,kotlin.Function1) androidx.compose.animation | Android Developersandroidx.appsearch.builtintypes.propertiesdeveloper.android.com@ExperimentalSharedTransitionApi@Composablefun Sh..
※ 공유 요소 전환은 컴포즈 1.7.0부터 사용할 수 있으며 아직 실험 단계라 추후 변경될 수 있음에 주의한다 이 포스팅에서 확인할 것은 안드로이드 디벨로퍼를 바탕으로 공유 요소 전환을 컴포즈로 어떻게 구현하는지다. 공유 요소 전환이란 이름은 생소하지만 앱을 쓰다 보면 한 번쯤은 어디서 봤을 법한 것이다. https://developer.android.com/develop/ui/compose/animation/shared-elements?hl=ko 연락처 리사이클러뷰에서 아이템을 클릭하면 연락처의 사진이 위로 이동하면서 다음 화면으로 이동한다. 플러터를 해 봤다면 Hero 애니메이션과 유사하게 작동하는 걸 알 것이다.이것을 컴포즈로 어떻게 구현할까? 이와 관련한 공식문서가 존재한다. https://dev..
컴포즈로 앱을 만들면서 뷰모델을 구현하다 보면 상태 관리와 관련해서 2가지 선택지를 마주하곤 한다. MutableState와 MutableStateFlow가 그것이다. SharedFlow는 최신 상태를 자동으로 유지하지 않아서 이벤트 기반 작업에 자주 쓰이기 때문에 UI 상태 관련 내용을 다룰 이 포스팅에선 생략하고, MutableState와 MutableStateFlow의 차이를 확인한다. MutableState MutableState는 컴포즈에서 값을 읽고 쓸 수 있는 상태 홀더로, 값의 변경사항을 컴포즈가 자동 추적할 수 있게 한다.값이 바뀌면 안드로이드 시스템은 이 상태에 의존하는 모든 컴포저블 함수들이 리컴포지션되게 한다. 그래서 유저 상호작용, 앱 상태의 변화에 따라 UI를 업데이트해야 하는 ..