일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 객체
- jvm이란
- rxjava cold observable
- 서비스 쓰레드 차이
- rxjava hot observable
- ar vr 차이
- 안드로이드 라이선스 종류
- 안드로이드 레트로핏 사용법
- 안드로이드 라이선스
- ANR이란
- 2022 플러터 안드로이드 스튜디오
- 스택 자바 코드
- 2022 플러터 설치
- 안드로이드 유닛 테스트 예시
- 안드로이드 레트로핏 crud
- 클래스
- rxjava disposable
- 안드로이드 유닛 테스트
- 스택 큐 차이
- 안드로이드 유닛테스트란
- Rxjava Observable
- android ar 개발
- 안드로이드 os 구조
- 서비스 vs 쓰레드
- 멤버변수
- jvm 작동 원리
- 플러터 설치 2022
- android retrofit login
- 자바 다형성
- 큐 자바 코드
- Today
- Total
목록분류 전체보기 (1024)
나만을 위한 블로그

※ 모든 코드는 예시 코드기 때문에 실제로 사용하려면 반드시 리팩토링 후 사용한다※ 컴포즈 안 쓴다 이전 포스팅에서 이어지는 글이다. 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 다운로드한 후 설치, 실행하면 ..
2024년은 다니던 회사를 그만두고 이직 기간을 거쳐서, 새 도메인을 다루는 회사에 입사해 안드로이드 네이티브 개발에 주력하게 된 해였다. 다니던 회사를 그만두다 개인적으로 생각하는 하이브리드 앱의 치명적인 단점은 '노잼'이다.작업들이 정말 재미없다. UI를 그리는 것도 아니고 기능은 구현하지만 온전히 내가 구현 중이라고 느끼기가 어려웠고 그냥 데이터 교통정리만 하는 느낌이 들어서 정말 재미없었다. 브릿지 깔짝, 딥링크 깔짝, 가끔 있는 네이티브 기능 유지보수가 전부였다.그러나 MVP에서 MVVM으로 변경하는 경험, 신규 기능 개발 시 단위 테스트를 도입해서 TDD 비스무리한 경험, CI/CD 환경을 내 손으로 구축하는 경험은 쌓을 수 있어서 이 부분만은 재밌었다. 처음 도전하는 웹뷰에 대해 알아가고 브..

※ 모든 코드는 예시 코드기 때문에 실제로 사용하려면 반드시 리팩토링 후 사용한다※ 컴포즈 안 쓴다 몇 차례에 걸쳐 실제 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..

기본 포트 변경 현재 프로젝트를 실행하면 8080 포트로 접근할 수 있다. 이 포트 번호를 바꾸려면 아래처럼 하면 된다.먼저 Application.kt 파일을 열어서 아래처럼 수정한다. import com.example.plugins.*import io.ktor.server.application.*import io.ktor.server.engine.*import io.ktor.server.netty.*fun main() { val env = applicationEngineEnvironment { envConfig() } embeddedServer(Netty, env).start(true)}fun ApplicationEngineEnvironmentBuilder.envConfig..
오래 전 자바로 StringBuilder를 쓰는 법에 대해 포스팅했었다. 감사하게도 이 글에 도움을 받은 분들이 많았던 듯하다.틈날 때마다 자바로 썼던 게시글들을 코틀린으로 다시 쓰는 나만의 작은 프로젝트를 진행하려는데, 그 시작으로 StringBuilder부터 시작해 보려고 한다. 먼저 자바에선 아래처럼 사용했었다. public class Main { public static void main(String[] args) { StringBuilder stringBuilder = new StringBuilder(); stringBuilder.append("문자열 ").append("연결");// String str = stringBuilder; // Strin..

※ 모든 코드는 예시 코드기 때문에 실제로 사용하려면 반드시 리팩토링하고 프로젝트에 맞는 예외처리를 추가해야 한다 이 포스팅은 아래의 영상을 바탕으로 작성했다. https://www.youtube.com/watch?v=Q0Njj-rfEXE 이미지 압축은 구글링해 보면 다양한 방법으로 구현할 수 있다. 아래 코드도 그 예시 중 하나일 뿐이니 이렇게도 구현할 수 있다 치고 넘어가면 좋을 듯하다.먼저 이미지 압축을 담당하는 ImageCompressor의 구현은 아래와 같다. import android.content.Contextimport android.graphics.Bitmapimport android.graphics.BitmapFactoryimport android.net.Uriimport android..