본문 바로가기
728x90

전체 글48

[Android 12] Preview of Android 12 Android 12 업데이트 내용 https://android-developers.googleblog.com/2021/02/android-12-dp1.html?m=1 First preview of Android 12 Posted by Dave Burke, VP of Engineering Every day, Android apps help billions of people work, play, communicate, and create on a wi... android-developers.googleblog.com Compatible media transcoding https://developer.android.com/about/versions/12/features/compatible-media-trans.. 2021. 2. 19.
[Android] Retrofit - Trust anchor for certification path not found 에러 해결 Retrofit을 이용한 http 통신 중에 javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException:Trust anchor for certification path not found 위와 같은 이슈가 발생한다. 원인은 Retrofit을 요청하는 웹사이트의 Certificate 인증서가 안드로이드 단말에 존재하지 않을 때 발생한다. 해결하기 위해 순서는 아래와 같다. 1. 요청하고자 하는 웹사이트의 인증서를 확인한다. 2. 인증서를 다운로드 받아서 프로젝트 내부 또는 외부에서 가져올 수 있도록 한다. 3. OkHttpClient에 인증서를 내포한 client를 만들 수 있는 Helper 클래스를 생성한다. 4. R.. 2021. 2. 14.
[Sunflower] Navigation 리뷰(1/3) (with ViewPager2 + TabLayout) 지난 포스팅에서 메인 Activity까지 확인하였습니다. 이번 포스팅은 메인 Activity에서 실행되는 Fragment의 Navigation에 대해서 분석해보겠습니다. 메인 Activity의 FragmentContainerView의 nav_garden 그래프에서 시작 Fragment로 등록되어있는 view_pager_fragment 아이디를 갖는 HomeViewPagerFragment를 확인해보겠습니다. HomeViewPagerFragment 레이아웃 먼저 확인해 보았습니다. CoordinatorLayout을 최상단 부모 View로 사용하고 있습니다. 더보기 CoordinatorLayout이란 FrameLayout에 기반을 둔 Layout으로 2가지 특징이 있습니다. 1. 최상위의 뷰로써 사용 2. 자.. 2021. 1. 4.
[Kotlin] LiveData를 유연하게 사용하는 map, switchMap map inline fun LiveData.map(crossinline transform: (X) -> Y): LiveData = Transformations.map(this) { transform(it) } 내부에서 Transformations.map을 사용한다. Transformations.map 함수는 아래와 같습니다. @MainThread @NonNull public static LiveData map( @NonNull LiveData source, @NonNull final Function mapFunction) { final MediatorLiveData result = new MediatorLiveData(); result.addSource(source, new Observer() { @Ov.. 2021. 1. 1.
728x90