본문 바로가기

프로그래밍언어/Android Programming

자바&안드로이드 Class Reflection Reflection 은 거울 속의 비친 자신의 모습이라는 의미입니다. 프로밍에서는 프로그램이 자신의 모습을 보고 심지어 수정하기까지 하는 것을 이야기 합니다. Java에서는 Reflection API 는 그런 기능을 클래스, 필드, 메소드를 들여다 볼 수 있는 API를 통해 제공합니다. 간단하게 Class Reflection 을 사용해서 어떤 클래스를 사용해서 클래스를 호출 할 경우 Class Reflection 을 통해서 패키지와 (상위 클래스) 현재 클래스에 대한 정보를 제공받게 됩니다. 그렇게 될 경우는 해당클래스가 public인지 final 인지 Abstract인지 까지도 getModifires 를 통해 패키징되어 넘어오게 됩니다. 이러한 숫자를 가지고 여러가지 일을 할 수 있는 static 메소.. 더보기
안드로이드 Thread 개념 (1) 스레드는 자바 뿐 아니라 안드로에드서도 굉.장.히 중요한 역활을 합니다. 정말 간단하게 이야기해서 스레드를 이야기하자면 여러분이 어플이나 여러 스마트폰에서 보시는 '잠시 기다려주세요' 혹은 동그라미 로딩을 표시하며 돌아가거나 하는 등의 '지금 작업하고 있습니다. 기다리세요' 라는 부분입니다.  별 거 아닌 것 같아보이시나요?하지만 UI 에서는 굉장히 큰 역활을 차지하고 있는 부분입니다. 왜냐하면 프로그래머의 입장에서 A라는 작업을 처리하려면 1분 정도가 걸리겠는데, 그 1분 사이에 클라이언트가 마구 터치를 한다거나 이것저것을 클릭한다면, 분명 Error가 발생할테니까요!  때문에 안드로이드서는 더더욱이 중요하고 자유롭게 사용해야 하는 부분이 "Thread" 입니다. 새로운 스레드를 만드는 방법은 간단합니.. 더보기
안드로이드 GPS 수신 방법 2가지 "A-GPS / S-GPS" 아이폰은 위치수신을 꺼놓은 경우에 위치 확인이 되지 않지만, 안드로이드는 이와 다르게 GPS를 꺼놓아도 네트워크를 이용해 위치 정보를 수신할 수 있습니다. 최근 GPS관련 어플리케이션을 제작한다고 GPS 관련 정보를 찾아보고 있는데 꽤나 재미있는 부분이 많네요^^ A-GPS 와 S-GPS로 나뉘게 되는데, 둘의 차이점은 위 표의 출처는 http://atin.tistory.com/381 입니다. A-GPS 의 경우에는 위성의 현재위치를 네트워크 서버에서 받아오기 때문에 데이터 요금이 발생하고, 배터리 소모가 적은 반면, S-GPS 의 경우에는 단독으로 위성과 통신을 하기 때문에 요금이 발생하지 않는다고 하네요. 제가 만드는 어플의 경우에는 A-GPS를 사용해서 제작을 할 생각입니다. 아무래도 가장큰 단점인.. 더보기
안드로이드 GPS 수신방법 2가지 아이폰은 위치수신을 꺼놓은 경우에 위치 확인이 되지 않지만, 안드로이드는 이와 다르게 GPS를 꺼놓아도 네트워크를 이용해 위치 정보를 수신할 수 있습니다. 최근 GPS관련 어플리케이션을 제작한다고 GPS 관련 정보를 찾아보고 있는데 꽤나 재미있는 부분이 많네요^^ A-GPS 와 S-GPS로 나뉘게 되는데, 둘의 차이점은 위 표의 출처는 http://atin.tistory.com/381 입니다. A-GPS 의 경우에는 위성의 현재위치를 네트워크 서버에서 받아오기 때문에 데이터 요금이 발생하고, 배터리 소모가 적은 반면, S-GPS 의 경우에는 단독으로 위성과 통신을 하기 때문에 요금이 발생하지 않는다고 하네요. 제가 만드는 어플의 경우에는 A-GPS를 사용해서 제작을 할 생각입니다. 아무래도 가장큰 단점인.. 더보기
안드로이드 지오코더 주소로 위치 출력하기 출처 : http://mnworld.co.kr 한글로도 현재 결과 출력이 잘됩니다. 다만 문제는 경도 위도 이외에 상호명 출력 및 리스트화를 시켜야 될듯 하네요. 아직 갈길은 멉니다요~ !! 안드로이드 지오코더 관련 자료가 국내에서는 많이 없네요 ... 더보기
안드로이드 GEOpoint 경도위도 쉽게 찾을 수 있는 곳 안드로이드 맵뷰를 쓰시다보면, 혹은 구글 지도를 쓰시다보면, 마커를 찍으실 경우가 많은데, 솔직히 GEO Point를 일일이 찾기에는 참 귀찮죠!! 하지만 요 웹사이트의 경우는 대충 마커를 찍을 곳의 주소를 입력 후 마커를 드래그해서 옮겨놓으면 위도 경도가 모두 출력됩니다. 저같은경우는 맵뷰 에서 마커 입힐 때 굉장히 자주 사용하는 웹사이트인데, 개발자 분들은 도움이 되시길 바랍니다. 주소는 http://www.mygeoposition.com/ 더보기
안드로이드 비디오뷰를 사용해보자! 출처 : http://www.mnworld.co.kr/1180 최근 비디오뷰를 사용해서 안드로이드 어플에 많은 효과를 넣고 있습니다. 아무래도 저용량의 비디오뷰를 사용하게 되면 안드로이드 어플 자체의 효과보다 더욱 큰 효과를 낳을 수 있기 때문인데요^^ 실제로 한번 적용을 해보았습니다! 비디오뷰의 코딩 로직은 video와 URI (비디오경로 및 패키지이름으로 비디오를 패키지에 포함시키기) , Media Player를 Import해서 ㅗ딩하게 되는데요. 물론 안드로이드 비디오 재생 컨트롤 바도 붙였다가 뗄수 있습니다! 저 같은 경우는 어플리케이션이 시작될 때 짧은 비디오 파일을 재생하고 어플이 실행되게끔 만들려는 의도를 가지고 코딩을 했습니다. 먼저, 안드로이드 프로젝트가 있는 폴더의 res 폴더안에 ra.. 더보기
안드로이드 자원 관리 * 자원이란 ? 응용프로그램은 기능성과 자원이라는 두 부분으로 구성된다. 기능성(functionality)-응용프로그램의 행동을 결정하는 코드 자원(resource)-텍스트 문자열, 이미지, 아이콘, 오디오, 동영상 등 응용프로그램이 사용하는 자산(asset)을 말한다. * 안드로이드 자원의 저장 위치와 저장 방식 자원 파일들은 Java클래스 파일들과는 개별적으로 저장된다. 일반적인 종류의 자원들은 대부분 XML 파일 안에 저장하지만, 이미지 파일 등의 원본 자료 파일들은 그 자체로 저장 할 수도 있다. * 자원 디렉터리 계통구조 모든 자원은 프로젝트 /res 디렉터리 안의 하위 디렉터리들에 배치된다. 하위 디렉터리 이름은 소문자로만 구성된다. 하위 디렉터리들은 자원의 형식을 나타낸다. 즉, 같은 종류의.. 더보기
안드로이드 텍스트뷰를 HTML 로 꾸미기 TextView Tx = (TextView)findViewById(R.id.main3textview); Tx.setText(Html.fromHtml(" 여드름 부위별 특징 ")); 임의로 만든 Tx 값으로 SetText ("하하하") 라고 적어주실텐데, 이부분에 Html.fromHtml 이라는 메서드 하나만 적어주시면 텍스트뷰에 보일 글씨 부분에 HTML 태그들을 사용하실 수 있습니다. font size 는 불가능합니다! 주의해주시구요^^ 저같은경우는 제목 태그 ~ 으로 글자크기를 조절했어요. 텍스트뷰라고 얕보지 마시고, HTML 태그로 많이 꾸미시길 바랄께요^^ 더보기
안드로이드 어댑터뷰 이해하기! 어댑터 뷰는 말 그대로 '목록'등을 나열하는 뷰의 일종이에요. 리스트 뷰는 복수개의 항목들을 수직으로 표시하는 위젯이며, 어댑터뷰의 가장 기본이라고 할 수 있겠습니다. 이를테면, 위와 같이 항목별로 리스트로 보여주는 부분이 리스트뷰입니다! (옆에 체크박스가 포함되어 있는 부분은 개발자가 더 편집을 해서 만든 커스텀뷰이겠네요^^) 이러한 리스트뷰에 표시되는 항목은 간단한 문자열일 수도 있고, 이미지일 수도 있으며, 문자열과 이미지를 함께 표시할 수도 있습니다. 위와 같은 계층을 가지며 ListView 와 Spinner로 크게 나눌 수 있습니다. 어댑터 뷰도 '뷰그룹'에서 파생된 것이며, 복잡해보이지만, 어댑터뷰는 어댑터가 전달한 데이터를 화면에 표시하기만 합니다. 미리 XML (layout파일)에 로 리스.. 더보기