다음 글은 전체 내용을 공유하지 않고, 새로운 블로그로 링크를 제공하는 글입니다. 이어보기 : https://thdev.tech/google%20io/2019/05/08/Google-IO-2019-Developer-Keynote/ 2019년 Google IO의 개발자 키노트 소개 중 안드로이드 관련을 정리한다. 2017년 Google IO 후기 2018년 Google IO Developer Kyenote 일부 정리 자세한 내용은 What’s New Android 세션에서 자세하게 다루겠지만 주요 내용을 Chet Haase가 짧게 정리해주었다. Kotlin 관련 안드로이드에서 코틀린은 이제 기본이라고 생각할 수 있다. 실제 수치로 알 수 있는데 50%의 안드로이드 개발자가 코틀린을 활용하고 있고, 가장 빠..
오랜만에 작성하는 개봉기로 에어팟 2세대를 다루려고 한다. 2 세대는 무선 충전을 지원하며, 1세대 보다 배터리가 살짝 더 오래간다고 하지만, 디자인도 그대로 사용하고, 노이즈 캔슬링은 제공하지 않는다. 2 세대고 무선 충전도 지원해서 한 번 사봤다. 필자가 가지고 있는 무선 이어폰은 여러 개가 있는데 아래와 같다. 보스 사운드프리 : https://thdev.net/788 [개봉기] 보스 사운드스포츠 프리(Bose Soundsport Free) 개봉기 노이즈 캔슬링 QC30에 이어 새로운 보스를 업어왔다 QC30은 여름에 쓰기엔 땀 때문에 불편함이 있다. 보스 노이즈 캔슬링 QC-30 리뷰 보러가기 그래서 구입한 보스 사운드 스포츠 프리 벌써 구입한지 3개월 지났지.. thdev.net 픽셀 버드 : ..
다음 글은 전체 내용을 공유하지 않고, 새로운 블로그로 링크를 제공하는 글입니다. 이어보기 : https://thdev.tech/coroutines/2019/04/30/Coroutines-Job-Exception/ 이전 글에서 Kotlin coroutines을 제어할 수 있는 Job에 대해 알아보았다. 기본적인 Job 초기화 후 사용한데 어떤 방법이 좋을까? 먼저 이전 글에서 초기화 때 적용했던 방법을 다시 살펴보자. val job = Job() CoroutineScope(Dispatchers.Default + job).launch { // ... } 이 코드는 CoroutineScope 초기화 시 Job을 함께 초기화하여 사용한다.(+를 이용하여 초기화한다.) 이렇게 초기화 함에 따라 Coroutine..
다음 글은 전체 내용을 공유하지 않고, 새로운 블로그로 링크를 제공하는 글입니다. 이어보기 : https://thdev.tech/coroutines/2019/04/08/Init-Coroutines-Job/ Kotlin Coroutines을 컨트롤하기 위한 Job을 제공해준다. 이 Job은 N 개의 coroutines의 동작을 제어할 수도 있으며, 하나의 coroutines 동작을 제어할 수도 있다. 먼저 Job이 어떤 것인지 알아보고, exception 발생 케이스를 함께 알아보겠다. Job Coroutines의 Job은 결국 coroutines의 상태를 가지고 있는데, 아래와 같은 6가지 상태를 포함하고 있으며, active/completed/canceled 상태에 따라 값이 아래의 표와 같다. 다음 ..
다음 글은 전체 내용을 공유하지 않고, 새로운 블로그로 링크를 제공하는 글입니다. 이어보기 : https://thdev.tech/coroutines/2019/04/05/Init-Coroutines/ Kotlin coroutines은 기존 Java Thread, 안드로이드에서 제공하는 AsyncTask, ReactiveX 패러다임을 일부 구현한 RxJava를 대신할 수 있는 Asynchronous/Non-blocking programming을 제공한다. 참고로 기존에 작성하였던 글에서 Kotlin Coroutines을 알아보고, 안드로이드에 library 적용하기 Java Thread/AsyncTask/RxJava 활용에 대한 내용이 포함되어 있다. 다음 글은 전체 내용을 공유하지 않고, 새로운 블로그로 ..
발표 시 노트북에서 벗어나 발표하고 싶은 욕심에 로지텍에서 만든 스포트라이트 프레젠테이션 리모트를 구입하였다아이폰 쓰면 키노트와 조합이 좋긴 하지만 요 녀석은 좀 더 많은 걸 할 수 있다. 근데 아주 잘 사용해야 효과를 크게 볼 수 있는 것은 분명하다사전에 이에 맞는 발표 자료를 준비하는 게 필요하고, 연습도 필요하다.그렇지 않으면 약간은 안 좋게 흘러갈 수 있다. 단순 클릭 커보다는 가격이 상당히 비싼 이 녀석은 한국에서 판매 중이고, 아마존을 통해서도 구입은 가능하다.별도의 프로그램도 제공하는데, 이 프로그램을 통해 마우스 제어, 집중 모드, 확대 모드 모두를 사용할 수 있다. 이 글은 하드웨어 리뷰와 프로그램 리뷰 2개로 분리하여 작성한다.[개봉기] 1부 로지텍 스포트라이트 프리젠터 개봉기[리뷰] ..
다음 글은 전체 내용을 공유하지 않고, 새로운 블로그로 링크를 제공하는 글입니다.이어보기 : https://thdev.tech/android/2019/03/04/RxJava2-Error-handling/ RxJava 2.x 사용 시 발생 가능한 버그를 소개하고, 해결 방법을 소개한다.RxJava 2.x 버전으로 올리고 나서 UndeliverableException이 발생하는 경우가 생겼다.이해를 돕기 위해 오류 코드를 그대로 추가하고, 이 오류가 왜 발생하는지와 어떻게 해결할지를 정리한다.io.reactivex.exceptions.UndeliverableException: The exception could not be delivered to the consumer because it has alread..
충전할 기기들이 많아지면 자연스럽게 찾게 되는 멀티 충전기.멀티 충전기는 종류도 다양하고, 충전 가능한 전압도 다양하다.보통 5개를 동시에 충전할 수 있는 기기들이 있는데 필자가 구입한 ANKER 제품을 소개한다. 구입한 제품은 USB-PD를 지원하고, 일반 USB 충전이 가능한데, 5개 포트이며, 총 60W를 지원한다.USB-PD로는 30W까지 충전이 가능해서 12인치 맥북 충전이 가능하다. 구매한지 좀 지나서 USB-PD를 지원하긴 하지만 최신형 기기의 충전에는 부족한 전압으로 신형 기기 충전에는 적합하지 않다. 동일 사양의 다른 디자인 리뷰 간단 개봉기 구입한지 한참 지나서 그냥 짧은 개봉기만 작성한다.최근에 80W까지 충전이 가능한 신규 멀티 충전기도 구입했는데 나중에 쓰려고 한다. USB 케이블..