•App

    [안드로이드 코드랩/아키텍처-2] 뷰모델에서 LiveData사용하기, MutableLiveData와 LiveData 차이점, UI 한번에 변경하기

    [안드로이드 코드랩/아키텍처-2] 뷰모델에서 LiveData사용하기, MutableLiveData와 LiveData 차이점, UI 한번에 변경하기

    [안드로이드 코드랩] 뷰모델(ViewModel) 초간단 이해 및 사용하는 이유, MVVM 아키텍처  [안드로이드 코드랩] 생명주기와 로깅(Lifecycles and logging),Timber, Application클래스, 데이터바이딩(data Android Kotlin 기초 | 학습 과정 | Android Developers Android Kotlin 기초 Androi.. devforyou.tistory.com Android Kotlin 기초 | 학습 과정 | Android Developers Android Kotlin 기초 Android Kotlin 기초 교육 과정은 Google Developers 교육팀에서 만들었습니다. 이 교육 과정에서는 Android Kotlin 프로그래밍 개념에 관해 알아보..

    [안드로이드 코드랩/아키텍처-1] 뷰모델(ViewModel) 초간단 이해 및 사용하는 이유, MVVM 아키텍처

    [안드로이드 코드랩/아키텍처-1] 뷰모델(ViewModel) 초간단 이해 및 사용하는 이유, MVVM 아키텍처

     [안드로이드 코드랩] 생명주기와 로깅(Lifecycles and logging),Timber, Application클래스, 데이터바이딩(data Android Kotlin 기초 | 학습 과정 | Android Developers Android Kotlin 기초 Android Kotlin 기초 교육 과정은 Google Developers 교육팀에서 만들었습니다. 이 교육 과정에서는 Android Kotlin 프로그래밍.. devforyou.tistory.com Android Kotlin 기초 | 학습 과정 | Android Developers Android Kotlin 기초 Android Kotlin 기초 교육 과정은 Google Developers 교육팀에서 만들었습니다. 이 교육 과정에서는 Andr..

    [안드로이드 코드랩/생명주기] 생명주기와 로깅(Lifecycles and logging),Timber, Application클래스, 데이터바이딩(data binding)

    [안드로이드 코드랩/생명주기] 생명주기와 로깅(Lifecycles and logging),Timber, Application클래스, 데이터바이딩(data binding)

    Android Kotlin 기초 | 학습 과정 | Android Developers Android Kotlin 기초 Android Kotlin 기초 교육 과정은 Google Developers 교육팀에서 만들었습니다. 이 교육 과정에서는 Android Kotlin 프로그래밍 개념에 관해 알아보고 다양한 앱을 빌드합니다. Android Kotlin 기 developer.android.com 과정 4 : 생명주기와 로깅(Lifecycles and logging) # 시작하며 안드로이드를 하나씩 공부해나가고 있지만, 할때마다 느끼는건 기본이 부족하다는 것을 느낀다. 뭔가 메뉴얼대로 공부하면 정말 좋을텐데 싶어 공식문서도 읽어보고하다가 코드랩이 있는 것을 발견하고 하나씩 따라해보기로 했다. 그중 생명주기와 로깅..

    [코루틴#2] 코루틴 스코프(Coroutine Scope)와 잡(Job)을 이용한 join

    [코루틴#2] 코루틴 스코프(Coroutine Scope)와 잡(Job)을 이용한 join

    [코루틴#1] 코루틴 시작하기, runBlocking, launch, delay, suspend # 시작하며 앱공부를 하다보니까, 아키텍처와 코루틴의 중요성을 알게 됐다. 그래서 책도사고 여러가지 공부할 방법을 고심했는데, 결국 강의하나를 질렀다. 코루틴에 대해서 셜명해주는 강의 devforyou.tistory.com # suspension point 해당 지점에서 코루틴이 잠들 수 있고, 깨어나는 지점이다. 쓰레드를 점유하지 않고 양보 할 수 있다. delay와 suspend키워드로 작성한 함수는 suspension point가 된다. 잠시 잠들었다가 돌아 올 수 있는 지점이다. # launch import kotlinx.coroutines.* suspend fun doOneTwoThree() { la..

    [코루틴#1] 코루틴 시작하기, runBlocking, launch, delay, suspend

    [코루틴#1] 코루틴 시작하기, runBlocking, launch, delay, suspend

    # 시작하며 앱공부를 하다보니까, 아키텍처와 코루틴의 중요성을 알게 됐다. 그래서 책도사고 여러가지 공부할 방법을 고심했는데, 결국 강의하나를 질렀다. 코루틴에 대해서 셜명해주는 강의인데, 공부한 내용을 바탕으로 정리하도록 하겠다. 이번에는 첫강의인 만큼 코루틴이 어떤 것이며 어떻게 사용하는지에 대한 감을 익히는 방법이 주된 내용이었다. 강의에 나온 예제를 바탕으로 중요한 개념들을 정리해볼까 한다. # runBlocking import kotlinx.coroutines.* fun main() = runBlocking { println(Thread.currentThread().name) println("Hello") } runBlocking는 코루틴을 생성하는 함수 중 하나이다. 이것을 코루틴 빌더라고 한..

    [안드로이드&코틀린] 뮤직플레이어#2, ExoPlayer로 음악재생하기, mapepr, SeekBar로 타임라인 구현하기, ExoPlayer 리스너

    [안드로이드&코틀린] 뮤직플레이어#2, ExoPlayer로 음악재생하기, mapepr, SeekBar로 타임라인 구현하기, ExoPlayer 리스너

    [안드로이드&코틀린] 뮤직플레이어#1, exoPlayer를 통해 노래 재생, 그룹 만들기, drawable id 재정의, mo # 완성작 간단한 뮤직플레이어다. 간단하지만 어려웠다. ViewModel의 개념이 들어가면서 깊게 다루지는 않았지만 꽤나 헷갈리는게 많았다. api를 통해 받아온 노래들을 통해 앱을 구성했다. 레트 devforyou.tistory.com # 완성작 # TODO LIST  저번 포스팅에서는 exoPlayer에 노래가 재생되겠끔하는 것, 재생목록에 뮤직 리스트가 보여지게 했다. 그러나 next나 prev버튼을 눌렀을때는 별 다른 동작을 하지 않기때문에 해당 행위에 대해서 동작을 정의해줘야 한다. 추가적으로 Model을 정의해 사용하기 때문에 그 흐름 순서에 대해서 잘 정리 하도록 ..