프로그래밍/Android 19

RxAndroid로 리액티브 앱 만들기 #2

RxAndroid로 리액티브 앱 만들기 #1 RxAndroid로 리액티브 앱 만들기 #2 RxAndroid로 리액티브 앱 만들기 #3 RxAndroid로 리액티브 앱 만들기 #4 출처 : https://realm.io/kr/news/rxandroid2/ 이 시리즈는 마이크로소프트웨어에 기고된 내용이 일부 수정되어 포함되어 있습니다.이번에는 지난 시간에 이어 데이터를 어떻게 다루는지 Map을 비롯한 오퍼레이터를 통해 살펴보겠습니다. 또 복잡한 콜백 클래스와 메서드를 람다를 통해 어떻게 코드를 단순화 시키는지를 다루겠습니다.데이터 가공 Map map은 한 데이터를 다른 데이터로 바꾸는 오퍼레이터입니다. 원본의 데이터는 변경하지 않고 새로운 스트림을 만들어 냅니다. 스트림의 데이터를 각각 10 씩 곱을 하는 ..

RxAndroid로 리액티브 앱 만들기 #1

RxAndroid로 리액티브 앱 만들기 #1 RxAndroid로 리액티브 앱 만들기 #2 RxAndroid로 리액티브 앱 만들기 #3 RxAndroid로 리액티브 앱 만들기 #4 출처 : https://realm.io/kr/news/rxandroid/이 시리즈는 마이크로소프트웨어에 기고된 내용이 일부 수정되어 포함되어 있습니다.애플리케이션 개발이 쉽다는 말은 점차 옛말이 되어가고 있습니다. 유즈케이스가 다양해진 만큼 입력 방식도 다양해졌습니다. 가공이 필요한 데이터는 다양한 방식으로 비동기적으로 전달됩니다. 데이터는 사용자에게 즉시 전달 가능한 것과 적절히 프로세싱을 거쳐야 하는 것으로 나누어집니다. 복잡한 요구사항을 만족하기 위해 서버와 클라이언트도 복잡해졌습니다. 오늘날 서버와 클라이언트 코드는 복잡..

1. RxJava 와 RxAndroid - RX(Reactive Extensions)의 소개

RxJava 와 RxAndroid - RX(Reactive Extensions)의 소개RxJava 와 RxAndroid - RxAndroid 일단 사용해보기 RxJava 와 RxAndroid - RxAndroid 일단 응용해보기 RxJava 와 RxAndroid - Reactor pattern RxJava 와 RxAndroid - Observer pattern RxJava 와 RxAndroid - Iterator patternRxJava 와 RxAndroid - Functional programmingRxJava 와 RxAndroid - MVVM modelRxJava 와 RxAndroid - Dataflow programmingRxJava 와 RxAndroid - Observable RxJava 와 Rx..

Butter Knife (Field and method binding for android views)

Field and method binding for Android views which uses annotation processing to generate boilerplate code for you. 출처 : GitHub - JakeWharton / butterknife Butter Knife는 Injection Library로써, Boilerplate 코드를 줄이는 목적으로 사용하실 수 있습니다. 이 라이브러리는 Annotation만으로 Resouce와 Class의 멤버 변수/함수간의 Binding을 자동으로 처리해줍니다. Boilerplate 코드를 줄여 개발 속도 향샹을 목적하신다면 좋은 솔루션이 될 수 있겠죠.일단 프로젝트에 세팅해 놓으면 직관적으로 사용할 수 있기 때문에 별다른 설명없이 Bu..

Android HTTP dump log 보기 (apache http)

HTTP 통신을 할때 OkHttp3나 Retrofit2와 같은 오픈 라이브러리를 많이 사용합니다.하지만 금융권과 같은 보수적인 프로젝트에서는 오픈 라이브러리 사용을 금지하고 Apache의 httpclient의 사용을 강제하는 경우가 있습니다. OkHttp3나 Retrofit2와 같은 경우에는 HTTP dump log를 설정하는 Interface를 제공하기 때문에 직관적으로 설정할 수 있도록 유도하는 반면에 Apache의 경우에는 그렇지 못합니다. 하지만, 방법은 항상 있죠. 그 방법을 알아보도록 하겠습니다. Main Application의 onCreate() 혹은 MainActivity의 onCreate()와 같이 한번만 호출되는 곳에 아래 코드를 붙혀 넣습니다. java.util.logging.Logg..

Android JUnit - app의 resource에 접근하기

Android JUnit - app의 resource에 접근하기google이 eclipse에 대한 지원을 중단함에 따라 Android 개발자들이 이제는 Android Studio로 많이 개발을 하고 있습니다.특히 github에 올라오는 소스들도 Android Studio 프로젝트가 많아지고 있는데요, 어느센가 Android Studio에서 프로젝트를 생성하면 androidTest외에 JUnit을 사용하는 test라는 것이 같이 생성되더군요. 전 개인적으로 ‘기능 테스트’는 JUnit으로 (test) ‘시나리오 테스트’는 AndroidTestCase (androidTest)로 합니다.Case : JUint(test)에서 app의 res/raw의 xml파일을 읽어야 한다.androidTest에서는 아래와 같..

gson 소개 및 사용법

gson 소개 및 사용법 예전에 Native (Android, iOS등)와 WAS 서버간의 통신시 사용하는 포맷은 여러 방식이 있었습니다. 그중에 대표적인 것으로 xml과 json이 있는데요. 요새는 json이 대세인듯 합니다.gson은 이 json을 편하게 사용할 수 있도록 google에서 만든 json관련 라이브러리 입니다.json과 java객체 간의 직렬화(Serialization)와 역직렬화(Deserialization)를 쉽게 할 수 있게 도와주기 때문에 json자체의 파싱보다는 업무로직 자체에 집중할 수 있도록 도와줍니다. github : google-gson 1. 설치하기 (Android Studio gradle 설정)Android Studio build.gradle(app) 설정depend..

앱에서 알림표시 활성 여부 확인하는 방법

Android도 iOS처럼 앱마다 알림수신을 ON/OFF 할 수 있습니다. 위 사진에서 '알림표시'가 그것인데요. 프로그래머 입장에서는 이 '알림표시'가 체크되어 있는지 아닌지 알아야 할 때가 있습니다. 이전에는 Reflection을 이용한 방법은 있습니다만 공식적으로는 불가능 했습니다. 하지만 Google I/O 2016에서 support-v4 ver24.0부터 공식적으로 지원한다고 합니다. 출처 : Google I/O 2016 Video Reflection 을 이용한 방법은 다음과 같습니다. public class NotificationsUtils { private static final String CHECK_OP_NO_THROW = "checkOpNoThrow"; private static fin..

터미널에서 logcat을 이쁘게 보자. (Colored logcat script : pidcat 소개)

Android App을 개발할때 대부분 Android Studio의 logcat윈도우에서 log 메세지를 확인합니다.하지만 저처럼 터미널에서 작업하는걸 좋아하는 사람도 있지요 ^^ 그 분들을 위한 Script를 소개해 드립니다.바로 pidcat ( https://github.com/JakeWharton/pidcat ) 입니다. PID Cat출처 : https://github.com/JakeWharton/pidcat 설치는 Homebrew를 사용합니다. 터미널에서 다음 명령어로 설치 합니다.$ brew install pidcat 실행 방법은 기존 logcat과 유사합니다.터미널에서 다음 명령어로 실행합니다. (com.oprah.bees.android는 자신의 app package name 을 넣으시면 됩니..

반응형