분류 전체보기
-
Android Component - Broadcast ServiceAndroid/Component 2019. 7. 24. 23:30
Boadcast Reveicer는 한마디로 Event Model로 실행되는 Component라고 정의할 수 있다. 또한 Android Component중에서 Intent 매커니즘만 잘 이해하면 가장 쉽다고 말할 수 있다! 예를 들면 배터리가 부족하다던가! 리시버 사용 방법은 간단하다 1. BroadcastReceiver를 상속받은 클래스 생성 class MyBroadcastReceiver : BroadcastReceiver() { override fun onReceive(context: Context, intent: Intent) { Toast.makeText(context, "I am BroadcastReceiver", Toast.LENGTH_SHORT).show() } } 제목 그대로 Broadcas..
-
Android Architecture Components #1 - DataBindingAndroid/AAC 2019. 7. 24. 00:07
우리가 흔히 개발하는 View 코드를 아래에서 살펴보도록 하자 class MainActivity : AppCompatActivity() { private lateinit var textName: TextView private lateinit var textAge: TextView private lateinit var textEmail: TextView private lateinit var textPhone: TextView override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) textName = main_view_name textAg..
-
Android Architecture Component가 뭐야?Android/AAC 2019. 7. 23. 22:00
먼저 안드로이드를 이야기하면 안드로이드는 컴포넌트 기반이다. CBD 방법론 ( Component Based Dev ) : 컴포넌트 여러 개를 조합하여 하나의 앱을 개발 우리가 흔히 보는 디자인 패턴에 대해서 한번 이야기를 해보자 MVC 패턴 ( Model + View + Controller ) 초기에는 클라이언트 사이드에서 사용하였다. 웹에서 서버에 데어터가 들어오면 어쩄든 화면에 출력시키는 것이 목적이기에 MVC를 사용 하였다 안드로이드에서 이를 적용 시키면 DB에 접근하는 클래스가 Model Class! 화면에 출력을 담당하고 이벤트를 받아오는 것이 Activity Class! 실행 순서 1. Controller를 통해 입력을 함 2. Controller가 Model과 View에게 입력을 보냄 3. ..
-
Volley를 이용한 HTTP 통신Android/Network 2019. 7. 23. 00:31
HttpURLConnection은 통신이 많은 소스들과 불편함을 겪어야 했지만 이번 시간에는 Volley를 사용하여서 좀더 쾌적한 HTTP 통신을 해보로독 하겠다. Volley는 2013년 Google I/O 에서 발표한 라이브러리이다. http 통신을 위한 다양한 기능을 제공해주고 1.0.0 버전에서는 내부적으로 apache http 라이브러리를 이용 했었지만 1.1.1 버전에서는 apache http 종속성이 제거된 라이브러리이다. 간단하게 사용할 것을 소개 하자면 아래와 같다. RequestQueue : 서버 요청자 StringRequest : 문자열을 결과로 받아 오는 정보 ImageRequest : 이미지를 결과로 받아 오는 정보 JsonObjectRequest : JSONObject 를 결과로..
-
HttpURLConnection을 이용한 HTTP 통신Android/Network 2019. 7. 22. 23:59
HttpURLConnection은 앞 포스팅에서 말했듯이 Java 표준 라이브러리에 포함되어 있지만 버그가 있어서 Apache Http 라이브러리인 HttpClient에 의해 뭍혀 졌고 버그가 수정되었지만 기존 Apache의 지속적인 사용과 좀더 좋은 라이브러리가 나오면서 뭍혀버린 클래스이다. 먼저 앞으로 나올 Volley와 Retrofit 또한 동일 UI와 동일 기능을 선보이는 앱을 구현할 것이다. 단순하게 타이틀 텍스트와 이미지 한장을 출력시키고 끝내보도록 하겠다.. 1. AndroidMenifest.xml 과 Gradle Dependency 설정하기 HTTP 통신에 있어서 가장 중요한 것은 Internet이다 까먹지 않고 펄미션을 등록해주도록 하자 Gradle Dependency는 리스트 출력을 위..
-
안드로이드 네트워크 프로그래밍 HTTP 통신Android/Network 2019. 7. 18. 22:42
흔히 우리가 안드로이드 네트워크 프로그래밍을 하면 소켓 통신, HTTP 통신 두가지를 떠올리고는 한다 ( FCM )? 그 중 HTTP 통신은 REST API을 통해서 데이터를 서버와 클라우드가 주고 받는다. HTTP 통신을 하는 방법에는 여러가지가 있다 - HttpURLConnection - HttpClient - Volley - Retrofit HttpURLConnection 와 HttpClient 안드로이드 네트워킹 프로그래밍 관련된 게시글 들을 보면 HttpClient관련해서 HttpURLConnection이 아닌 HttpClient를 사용한 예제들이 많이 보이는데 HttpClient는 ApacheHttp 라이브러리 이다. 안드로이드의 초기 HttpURLConnection 부분에서 내부적인 문제가 ..
-
REST API 간단한 테스트 서버 만들기 - JSONPlaceholderServer 2019. 7. 18. 21:41
REST API 테스트를 해보려고 하지만 마땅한 서버가 없다. 그래서 구글링을 통해 검색을 통해 좋은 것을 찾아 보았다. Node.js를 이용한 간단한 Json 서버이다. 1. Node.js 설치하기 https://nodejs.org/ko/ Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 들어가서 설치하면 된다! 2. Node와 NPM 설치여부 확인하기 깃 커맨드를 매우 마음에 들어하여서 깃 배쉬로 확인을 진행 하였다. 정상적으로 설치된 것을 보았다. 3. 서버 설치하기 커맨드 하나로 끝나기는 하지만 아래와 같이 폴더를 만들어서 설치를 해주자 mkdir : 폴더를 생성 명령어 cd : 폴더..
-
RxKotlin과 RxAndroid 알아보기Android/RxJava 2019. 6. 18. 16:07
RxJava와 어떤 차이점이 있을까..? 뭣도 모르고 그냥 아 Rx니깐 같이 쓰겠구나~ 싶어서 사용하고 있었지만 그래도 뭐가 추가되었고 내가 쓰고 있는가? 싶어서 한번 알아보았다. RxKotlin 기본적으로 Kotlin의 Extension을 이용하여 좀더 편리한 Rx 사용을 권장하기 위해서 생긴 라이브러리 이며 RxJava 1.x와 RxJava 2.x를 모두 지원한다. 먼저 변경된 점은 github에서 보면 다 알 수 있고 여기서는 일부만 건들여 보도록 하겠다. 1. Observable 생성 Observable.fromArray(arrayOf(1, 2, 3, 4, 5)) arrayOf(1, 2, 3, 4, 5).toObservable() 바로 자료형 뒤에 toObservable을 하면 알아서 Observ..