Android

안드로이드의 BuildConfig 활용

안드로이드는 앱을 빌드하는 과정에서 여러 파일을 자동으로 생성한다. BuildConfig 클래스도 그 중 하나로, 현재 빌드에 관한 정보를 상수 필드로 갖고 있어 코드에서 직접 참고할 수 있다. package me.sunphiz.kotlin.myapplication; public final class BuildConfig { public static final boolean DEBUG = Boolean.parseBoolean(“true”); public static final String APPLICATION_ID = “me.sunphiz.kotlin.myapplication”; public static final String BUILD_TYPE = “debug”; public …

안드로이드의 BuildConfig 활용 더 보기 »

Glide 이미지 라이브러리 커스터마이징

Glide의 커스터마이징은 공식 문서(영문)에 더 자세히 설명되어 있다. 내게 필요한 기능이 무엇인지 참고하고, 더 자세한 내용은 꼭 공식 문서를 보자. Glide는 Fresco, Picasso, Universal Image Loader 등과 함께 안드로이드에서 손 꼽히는 이미지 라이브러리다. Glide를 이용하면 원격지(remote)/로컬(local) 이미지를 가져와 화면에 표시할 수 있다. 가져온 이미지는 캐싱을 통해 로딩 속도를 개선할 수 있으며, 필요하다면 이미지 모서리 깎기(rounding)같은 …

Glide 이미지 라이브러리 커스터마이징 더 보기 »

Volley의 Apache HTTP client 라이브러리 참조 제거

Volley는 2013년 구글에서 공개한 안드로이드 네트워크 라이브러리다. 구글 플레이 스토어 팀에서 개발/적용 후 공개한 것이 Volley의 시작으로 알려져 있다. 지금은 인기가 예전만 못하지만, 공개 당시에는 가장 좋은 네트워크 라이브러리 중 하나였다. Volley에 대한 자세한 소개는 공식 트레이닝 사이트(한글)를 참조하자. 공식 Apache HTTP client 라이브러리(이하, 라이브러리)는 자바 진영의 대표적인 HTTP 라이브러리로, 수많은 개발자를 네트워크와 관련된 혼란에서 …

Volley의 Apache HTTP client 라이브러리 참조 제거 더 보기 »

앱의 targetSdk 별 대표적인 차이점들

지난 글에서 앱의 targetSdk 버전에 따라 동작이 달라진다는 내용을 살펴보았다. 안드로이드를 이렇게 만든 이유는 이 글에, 차이점은 안드로이드 API 공식 문서인 이 글에 잘 정리되어 있다. 안드로이드에서 호환성 동작(compatibility)라  부르는 이런 차이 점을 여기서는 앱 사용에 영향을 많이 미치는 대표적인 것들만 추려 설명한다. API 9 메인 스레드에서도 네트워크 통신을 할 수 있었다. API 10 이상부터는 …

앱의 targetSdk 별 대표적인 차이점들 더 보기 »

Volley와 Stetho로 네트워크 디버깅

Stetho는 2015년 페이스북에서 공개한 안드로이드 디버깅 도구다. 크롬 브라우저에 내장된 개발자 도구인 DevTools를 활용해 안드로이드 앱의 네트워크, 데이터베이스, 프리퍼런스, 레이아웃 등을 디버깅 할 수 있다. 더 자세한 기능 소개는 공식 페이지를 참조하자. 네트워크 라이브러리와 연계 동작하는 라이브러리들은 보통 Volley를 지원한다. 하지만, Stetho의 네트워크 디버깅 기능은 앱이 OkHttp나 안드로이드의 HttpUrlConnection를 써야 쓸 수 있다. 환경이 맞다면 …

Volley와 Stetho로 네트워크 디버깅 더 보기 »