4월, 2017의 게시물 표시

안드로이드 책없이 배울수 있는 사이트 소개

간단하게 배울수 있는 안드로이드!!! 아래 사이트 소개합니다. 많은 도움이 된 팁스소프트 감사합니다. http://www.tipssoft.com/bulletin/board.php?bo_table=old_bbs&wr_id=501   3. 안드로이드 프로그래밍 시작하기      http://www.tipssoft.com/bulletin/tb.php/FAQ/914     4. 버튼 사용하기      http://www.tipssoft.com/bulletin/tb.php/FAQ/916     5. 에디트텍스트(EditText) 사용하기      http://www.tipssoft.com/bulletin/tb.php/FAQ/917     6. 리스트뷰 사용하기 - 기초편      http://www.tipssoft.com/bulletin/tb.php/FAQ/918     7. 리스트뷰 사용하기 - 활용편      http://www.tipssoft.com/bulletin/tb.php/FAQ/921     8. 쓰레드(Thread) 의 이해 - 기초편      http://www.tipssoft.com/bulletin/tb.php/FAQ/922     9. 스트림(Stream)의 이해 - 바이트 스트림      http://www.tipssoft.com/bulletin/tb.php/FAQ/928     10. 소켓(Socket) 통신의 이해 - 클라이언트  ...

Data Binding?? (BetterKnife 대체?)

http://realignist.me/code/2016/05/25/data-binding-guide.html

RxJAVA 관련 에센셜

http://www.acornpub.co.kr/book/rxjava-essentials http://realignist.me/code/2016/05/29/rxjava-on-android.html

enum 타입(열거타입)

이미지
[JAVA] 열거타입 enum 열거타입 enum Java에서 열거 타입 enum을 정의할 수 있으며, 변수를 선언할 때 변수 타입으로 사용할 수 있다. enum은 그 타입 변수의 모든 가능한 값을 열거함으로써 지정할 수 있다. enum Season {winter, spring, summer, fall} enum에서 나열할 수 있는 값들의 수는 제한이 없다. Season time; 변수 time 은 가질 수 있는 값이 제한되어 Season의 4개 값 중 하나만 가질 수 있다. 그 외의 값을 가지게 되면 컴파일 오류가 발생한다. time = Season.spring; enum은 변수가 가질 수 있는 값의 수가 적을 때 꽤 도움이 된다. 예를 들어 학생이 받을 수 있는 학점을 나타낸다고 가정하면 다음과 같이 enum을 선언할 수 있다. enum Grade {A, B, C, D, F} Grade는 이 학점중의 하나의 값만 가질 수 있다. * enum의 메쏘드  Static Methods valueOf(String arg)  String 값을 enum에서 가져온다. 값이 없으면 Exception 발생 valueOf(Class<T> class, String arg) 넘겨받은 class에서 String을 찾아, enum에서 가져온다. valueOf(String arg)는 내부적으로 자기 자신의 class를 가져오는 것이다. values() enum의 요소들을 순서대로 enum 타입의 배열로 리턴한다. ENUM$VALUES의 카피이므로, 너무 자주 호출하는 것은 좋지 않음. Static 아닌 Methods  name()  호출된 값의 이름을 String으로 리턴한다.  ordinal() 해당 값이 enum에 정의된 순서를 리턴한다  compare...

안드로이드 String Null 체크

안드로이드/Android String null 체크 하기 ~ ! 출처:  http://arabiannight.tistory.com/entry/안드로이드Android-String-null-체크-하기#recentTrackback  [아라비안나이트] String null 체크를 하기 위해서 null 체크 메서드를 만들어서 사용하거나 조건문으로 null 체크를 하는 경우가 대부분인데요. 안드로이드에서는 따로 Text를 위한 Util 을 제공해 줍니다. 그 중에 isEmpty 라는 메서드가 문자열 null 체크를 해주는 녀석 입니다.     TextUtils.isEmpty( CharSequence  str ) String 문자열을 넣으시면 리턴값이 boolean 이기 때문에 빈문자열일 경우에는 true 를 리턴해 줍니다.^^ 출처:  http://arabiannight.tistory.com/entry/안드로이드Android-String-null-체크-하기  [아라비안나이트]

MediaMetadataRetriever 사용하기

출처:  http://kanirody.blogspot.kr/2015/07/sd-card-video-file-bitmap.html SD card에 있는 video file 을 Bitmap 으로 추출하기(MediaMetadataRetriever사용하기) 프로젝트 진행 도중에 sdcard에 저장되어있는 mp4 file 을 불러와서  Bitmap으로 추출해야하는 작업이 필요했다. 소스를 분석하기에 앞서 MediaMetadataRetriever에 대해서 알 필요가 있다고 생각하여 간단히 설명하려한다. 말그대로 media의 metadata를 가져올수 있는 class이다. google 공식 api에서는 MediaMetadataRetriever extends  Object java.lang.Object    ↳ android.media.MediaMetadataRetriever Class Overview MediaMetadataRetriever class provides a unified interface for retrieving frame and meta data from an input media file. MediaMetadataRetriever 클래스는 입력 된 미디어 파일로부터 프레임 메타 데이터를 검색하기위한 통일​​ 된 인터페이스를 제공한다. 라고 설명하고 있다. 이제소스를 보자 import android.app.Activity; import android.graphics.Bitmap; import android.media.MediaMetadataRetriever; import android.media.MediaPlayer; import android.net.Uri; import android.os.Bundle; import android.os.Environment; ...

안드로이드 소스 파헤치기! StylishMusicPlayer [1일차]

이미지
안녕하세요. 우선 저는 개발자 초보이며, 내용에 대한 신뢰는... 본인이 판단하시기 바랍니다. 공부하면서 기록한다는 느낌이기 때문에 참고만 하시기 바랍니다.. ㅎㅎ 오늘부터 Opensource 중 StylishMusicPlayer 를 이용하여 하나하나 세세하게 파헤쳐 볼려고 합니다. 우선 Github 주소 :  https://github.com/ryanhoo/StylishMusicPlayer 어떤 어플인지 한번 볼까요? 이름처럼 스타일리쉬한 music player 입니다. 배울것이 많을 듯 합니다. 먼저 자바 파일 구성은 아래와 같습니다. +_+ 벌써부터 험란한 여정이 시작되었군요. ㅎㅎ 천천히 하나하나 가볼께요~ 우선 data의 model을 뜯어 볼까요? data안에 보시면 model / source 패키지가 있습니다. model 은 말그대로 구조~! 음악폴더, 재생리스트, 노래 등 구조파일을 다른객체에 전달하기 위해 사용되는 패키지 같군요~ 우선 Parcelable 인터페이스를 사용하고 있습니다. putExtra로 전달하지 못하는 구조 전달 개념? ㅎㅎ 아래에 상세하고 설명되어 있군요!! http://arsviator.blogspot.kr/2010/10/parcelable%EC%9D%84-%EC%82%AC%EC%9A%A9%ED%95%9C-%EC%98%A4%EB%B8%8C%EC%A0%9D%ED%8A%B8-%EC%A0%84%EB%8B%AC-object.html 데이터베이스는 orm을 사용하는군요! 저도 처음이지만 아래 내용을 보시면 이해가 가실겁니다. 상세하게 설명하지는 않고 코드로 이해해볼께요. http://d2.naver.com/helloworld/472196 우선 라이브러리는 다음과 같습니다. https://github.com/litesuits/android-lite-orm 오늘은 여기까지 모르는 부분만 올릴 생각!^^

싱글턴 패턴에 대한 고찰

안드로이드 펍에서 아카마린님이 남긴 글을 퍼왔습니다. 양해바랍니다. 책을 읽다가 유용한 정보를 발견하여 남깁니다.  Head First Design Patterns 中에서.. 싱글턴을 모르시는 분과 이미 알고 계시는 분들에게 큰 도움이 되리라 생각합니다. 싱글턴이란? 싱글턴 패턴은 해당 클래스의 인스턴스가 하나만 만들어지고, 어디서든지 그 인스턴스에 접근할 수 있도록 하기 위한 패턴입니다. 일반적인 싱글턴 패턴 구현법 01. public   class   Singleton { 02. private   static   Singleton uniqueInstance; 03. private   Singleton() {} 04.   05. public   static   Singleton getInstance() { 06. if (uniqueInstance ==  null ) { 07. uniqueInstance =  new   Singleton(); 08. } 09. return   uniqueInstance; 10. } 11. ....... 12. ....... 13. } 일반적으로 2개 이상의 객체가 만들어지면 안되는 클래스에서 많이 사용하는데 Singleton.getInstance() 이런식으로 접근을 하죠. 그럼 다른 객체에서 언제든지 인스턴스를 얻어와서 사용할 수 있게 됩니다. 하지만 이 코드에는 문제점이 있습니다. 싱글턴은 유일무이한 객체를 위한 패턴이지만 2개 이상의 다중스레드에서 접근하게 될 경우, 인스턴스가 중복 생성될 수 있습니다. 이걸 해결하기 위한 방법은 간단합니다. 1. public   static   synchronized   Singleton getInstance() { ...