- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- blog
- Android
- n3문법
- androidstudio
- 일본어문법
- 안드로이드
- suspend
- GIT
- 진짜학습지후기
- errorhandling
- 일본어기초
- posting
- 책리뷰
- KotlinInAction
- 책추천
- jlpt
- CustomTab
- webflux
- Kotlin
- 진짜일본어
- pullrequest
- github
- 인공지능
- PR
- 코틀린
- ai
- 학습지
- coroutine
- 진짜학습지
- rxjava
목록안드로이드 (74)
코딩하는 개굴이
시작하기 전에 해당 포스팅을 찾아왔다면 Lifecycle 이 무엇인지 알고는 있겠지만 확실히 하기 위해서 잠시 요약해보도록 하자. Lifecycle Lifecycle 이란, activity 와 fragment 와 같은 컴포넌트의 lifecycle state 를 들고 있는 정보로, 다른 object 들이 해당 state 를 추적(observe) 할 수 있도록 허용하는 클래스를 말한다. Lifecycle 은 Event, State 를 활용해 연결된 component 의 수명 주기 상태를 추적한다. Event 는 프레임워크 및 Lifecycle 에서 전달되는 수명 주기 이벤트로, activity 와 fragment 의 콜백 이벤트에 맵핑되고, State 는 Lifecycle 객체가 추적한 컴포넌트의 현재 상태..
왜 갑자기 Lifecycle Scope 를 보러 왔는데 초장이 Lifecycle aware Copmonent 인가? 라고 생각할 수 있다. 그러나, Lifecycle Scope를 이해하기 위해서는 우선 Lifecycle aware Component 를 알아야한다. 그럼 순차적으로 진행 해보도록 하자. Lifecycle aware copmonent Lifecycle aware component 란, 다른 컴포넌트의 lifecycle 이 변경될 때 이에 대응하는 라이브러리로, component 가 lifecycleowner의 상태 변화를 observe 하여 필요한 작업을 스스로 하는 기능을 수행한다. 생명주기 메소드에 데이터를 불러오거나 리소스를 의존하는 방식은 프로그램의 규모가 커지면 오동작할 가능성이 생..
코틀린에는 return 하지 않아도 되는 반환 유형이 2가지 존재한다. Unit 과 Nothing 이 그것인데, 이 두개의 차이점에 대해 알아보도록 하자. Unit 이란? Kotlin 은 반환 유형을 지정하지 않는 경우 반환 유형이 기본적으로 Unit 이 된다. Unit은 Kotlin 에서 값을 반환하지 않음을 의미하며, java 의 void 와 동일하다. fun returnUnitType1(): Unit { //return 을 명시적으로 하지 않아도 된다. } fun returnUnitType2(): Unit { return } fun returnUnitType3(): Unit { return Unit } 따라서, 위의 3 경우 다 무방하다. Unit 을 반환하는 함수는 return을 생략한다고 해도 ..
오랜만에 버전 낮은 것들만 작업하다가 새로운 프로젝트를 여니 아래와 같은 에러가 발생하였다. "This version of the Android Support plugin for IntelliJ IDEA (or Android Studio) cannot open this project, please retry with version 2021.2.1 or newer." 에러의 내용을 봐서 알 수 있듯이, 이럴땐 대부분 안드로이드 스튜디오를 업데이트 하면 해결된다. 완전히 최신은 아니라도 적어도 에러에서 명시된 버전 이상으로 업데이트 해주도록 하자. :)
사용자가 앱을 사용하는 과정에서 앱을 나가거나 잠시 멈춰지거나 다시 시작하는 등의 상태가 변화하는 상황이 발생할 수 있다. 이러한 과정에 있어서 Activity 클래스는 각 상황의 상태 변화를 알 수 있도록 여러 콜백을 제공한다. Activity의 상태 별 전환 과정의 클래스는 onCreate, onStart, onResume, onPause, onStop, onDestroy 로 총 6가지 콜백을 제공하며, 액티비티가 새로운 상태에 들어가게 되면 시스템은 각 콜백을 호출해준다. 아래 다이어그램은 이를 알기 쉽게 시각적으로 나타낸 것이다. 각 콜백 메서드들에 대해 간략히 알아보자. onCreate 액티비티가 생성될 때 호출되는 콜백으로, setContentView 가 여기서 수행된다. 이유는 해당 콜백은 ..
Android Manifest 에서 LaunchMode 라는 것을 본 적이 있을 것이다. 아래와 같이 activity 의 옵션으로 들어가는 것 중 하나로, 각 액티비티를 시작하는 방법을 지정하는 것이다. (스포이지만, exported 설정에 대해서는 차후의 포스팅에서 다루도록 하겠다.) 아래 중 총 4가지 중 하나로 설정할 수 있다. standard singleTop singleTask singleInstance 각각에 대해 간략하게 알아보도록 하자. [참고!] 하위 설명들은 편의를 위해 A, B, C... 액티비티들이 존재하며 그 중, A 액티비티가 특정 launchMode의 설정임을 가정합니다. A > B > C 의 표현은 액티비티 스택을 의미하며, A 액티비티 위 B가, B 액티비티 위에 C 가 쌓..
시작하기 전에, 해당 글에서는 본인이 헷갈리는 부분이 다소 많았기 때문에 부가 설명을 많이 추가했음을 먼저 알리고싶다. 코루틴은 무엇일까? 코루틴은 시작된 스레드를 중단하지 않으면서 비동기적으로 실행되는 코드로, AsyncTask처럼 스레드의 직접 관리가 필요하지 않고, 기존의 다중 스레드보다 효율적으로 동작하는 장점이 있다. # 코루틴은 Thread를 중단하지 않는다? 스레드를 중단하지 않는다는 것이 어떤 의미일까? 우선, 코루틴1을 실행 중인 상태에서 코루틴2가 실행 될 때를 가정해보자. 이때, 실행 중인 Thread를 중지시키면서 Context Switching을 수행하는 것이 아닌 잠시 코루틴1을 멈춰두었다가 다시 실행할 때 이전 상태를 불러와 다시 스레드에서 이를 수행한다. 따라서, 코루틴은 T..
이전에 아래의 포스팅에서 Volley 및 Retrofit 에 대하여 간략하게 다루었는데 이번에는 Volley 의 간단한 사용법에 대해 정리해보고자 한다. https://yejinson97gaegul.tistory.com/entry/Retrofit-%EA%B3%BC-Volley-%EC%97%90-%EB%8C%80%ED%95%98%EC%97%AC Retrofit 과 Volley 에 대하여 Retrofit 2 실습한 GITHUB 링크를 기반으로 조사하였습니다. OkHttp, Retrofit, Volley의 등장 배경 한때 HttpUrlConnection 이나 HttpsUrlConnection을 NetworkManager class에 넣고 AsyncTask로 접근하는 방식을.. yejinson97gaegul.t..
항상 한 세트로 등장하지만 정확히 무엇인지 모르겠던 저 세가지 아이들을 한꺼번에 정리해보려한다. 아래 나올 내용들을 한줄 정리로 스포해보자면 결론적으로 Handler, Looper, Thread 사이의 관계는 Handler, Looper는 Thread에 사용되는 역할이라는 것이다. 시작하기 전에, 이 모든 설명은 Android 의 "Single Thread System" 으로부터 뻗어나가기 때문에 정확히 무엇인지 모르겠다면 아래 포스팅에서 관련 내용을 참고하는 것을 권장하고 싶다. https://yejinson97gaegul.tistory.com/entry/%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C%EC%9D%98-SingleThread-%EC%83%81%ED%83..
시작하기 전에 # Thread란? Thread가 무엇인지 알아보기 위해서는 Program, Process, Thread 사이의 관계를 아는 것이 이해에 도움이 될 것이다. - Program : 컴퓨터에서 어떤 작업을 위해 실행할 수 있는 "정적인 상태의 파일" 로 명령어들의 집합이다. - Process : 운영체제로부터 자원을 할당받은 "작업의 단위"로, Program의 동적인 상태라고 할 수 있다. - Thread : 프로세스가 할당 받은 자원을 이용하기 위한 "실행 흐름의 단위" 이다. Android에서의 Thread Android에서 Thread는 기본적으로 Main Thread 하나만 존재한다. 해당 상태를 "Single Thread" 라고 부른다. 그러나, 하나의 Main Thread에서는 ..