안드로이드 디자인과 관련한 책으로 안드로이드의 다양한 화면 크기의 특성에 맞춰 디자인하는 방식을 잘 설명하고 있다. 보통 개발자들은 기능에 집중해 UI 구성이나 디자인을 소홀히 하는 측면이 있다. 그러나 사용자가 맨 처음 접하는 것은 앱의 기능보다는 화면 디자인이 먼저이다. 당연히 UI 디자인이 앱의 첫 인상을 결정하게 될 것이다. 사람도 첫인상이 중요하듯이 앱도 첫인상이 계속 사용하느냐의 여부를 정하게 된다. 어쨋든 이런 관점에서 볼 때 박수레 님의 이 책은 상당히 유용하다. 개발자보다는 디자이너 관점에서 보면 더 좋을 것 같다. 48dp의 리듬이나 UI 설계, 레이아웃 등의 내용은 디자이너 뿐만 아니라 기획자, 개발자에게도 도움이 될 것 같다. 안드로이드 앱을 준비하고 있다면 한번쯤 봐야 하지 않을까..
하이차트(high chart)의 가장 큰 장점은 자바스크립트 기반으로 웹과 모바일을 모두 지원한다는 점이다. 모바일 트래픽이 증가함에 따라 최근 하이차트(high chart)를 그래프 툴로 활용하는 경우를 종종 볼 수 있다. 웹에서 사용할 수 있는 무료 그래프 툴에 대하여 에서 여러가지 그래프 툴을 설명했었는데, 오늘은 하이차트의 활용에 대해 정리해보도록 한다. 하이차트(highchart) 설치 하이차트를 설치하는 것은 매우 간단하다. jQuery와 같은 자바스크립트를 추가하고 이어서 하이차트의 자바스크립트를 포하하면 된다. 주의할 점은 순서가 jQuery 다음에 하이차트라는 것이다. 가끔 highcharts.js 파일을 jquery.min.js보다 앞에 써서 오류가 발생하는 경우가 있다. 하이차트(hi..
최근 모바일 웹을 지원하는 반응형 웹을 만드는 경우가 많다. 미디어쿼리나 부트스트랩(Bootstrap)을 활용해서 쉽게 반응형 웹을 만들기도 하지만 경우에 따라서 직접 모바일 기기인지 체크해야 하는 때도 많다. 그렇다면 모바일 브라우저를 어떻게 구분해 낼까? 자바스크립트로 브라우저 크기 구분 먼저 브라우저의 크기로 구분해 내는 방법이 있다. 자바 스크립트의 document.body.clientWidth 값을 가져와서 사용하면 된다. 소스를 살펴보자 if (document.body.clientWidth < 800) { // 모바일 기기 관련 작업 } 실제 몇몇 기기의 document.body.clientWidth의 값을 체크해 보면 다음과 같다. 디바이스 인치 세로모드 가로모드 아이폰 6 4.7인치 375..
이클립스를 사용하다보면 가끔 자바 프로젝트인데도 일반 프로젝트로 인식해서 자바 관련 설정 항목들이 프로퍼티에서 나오지 않는 경우가 있다. 이런 경우, SVN 서버에 접속해서 프로젝트를 다시 신규로 Check out 하기도 하는데 아예 .project 파일을 수정해서 해당 항목이 제대로 나오도록 구성하는 방법을 정리해 보려고 한다. 자바 프로젝트의 경우, 아래와 같이 프로퍼티 또는 속성에서 Java Build Path 등 설정항목이 보인다. 다음은 이런 설정 항목이 사라졌을 때 처리하는 방법이다. 일반 프로젝트를 자바 프로젝트로 변경하는 것도 동일하게 처리하면 된다. 프로젝트 폴더의 .project 파일을 텍스트 편집기로 연다. 숨김 파일로 되어 있으므로 숨김 파일을 볼 수 있도록 설정을 바꾸거나 ls -..
슈퍼드로이드 카페 (http://cafe.daum.net/superdroid)의 박성근님이 쓴 안드로이드 책이다. 안드로이드 개발은 인터넷 여기저기에 많은 소스들이 있어 접근하기 쉽다. 그러나 안드로이드 개념과 구조를 잘 이해하지 못하면, 문제가 발생했을 때 해결하기 어려운 것도 사실이다. 그래서 인터넷의 단편적인 자료만 볼 것이 아니라, 전반적인 구조를 설명하는 개발서도 반드시 읽어야 한다고 생각한다. 이런 측면에서 볼 때, 이 책은 안드로이드의 기본 개념부터 활용까지 저자의 경험을 기반으로 잘 설명하고 있다. 처음부터 끝까지 읽어보면 안드로이드의 전체적인 개념이 잡히지 않을까 한다. 안드로이드 개발에 있어 꼭 참고해야 하는 부분이 주로 뒤부분에 있기 때문에 꼭 끝까지 읽어봤으면 한다. 개인적으로는 서..
안드로이드 스튜디오로 개발하는데 있어 기존 방식과 약간 다른 부분이 있어 해당 부분들을 정리해 보려고 한다. 앱 버전 및 SDK 버전 설정 예전에는 어플 버전을 설정하기 위해 manifest.xml 파일에 versionCode와 versionName을 지정하면 되었다. 또한 지원하는 안드로이드 버전을 설정하기 위해서는 use-sdk 태그에 minSdkVersion과 targetSdkVersion을 지정했다. 그러나 안드로이드 스튜디오에서 생성한 프로젝트는 아무리 manifest.xml을 수정해도 적용되지 않는다. 그 이유는 바로 Gradle Script가 우선 적용되기 때문이다. 위 그림에서 build.gradle이란 파일을 열어 보면 앱 버전이나 SDK 버전을 설정할 수 있는 스크립트가 있다. 바로 이..
자바 URL과 URLConnection 클래스 자바에는 java.net.URL 클래스를 통해 URL 주소를 인식할 수 있으며, 프로토콜, 도메인, 포트, 경로 등을 지정할 수 있다. URLConnection을 통해 자바에서 웹페이지에 접속하기 위해서는 URL 주소를 java.net.URL 클래스로 변경할 필요가 있다. 다음 두 가지 방법으로 URL 클래스를 생성할 수 있는데, 일반적으로 문자열을 받아서 처리하는 2번째 방법을 많이 사용한다. URL url = new URL("http", "blog.acronym.co.kr", 80, "537"); URL url = new URL("http://blog.acronym.co.kr/537"); 해당 URL에서 페이지 정보를 가져오기 위해서 다음과 같이 URLC..
최근 핫이슈들을 살펴보기 위해서 네이버, 다음의 실시간 검색어를 자주 살펴본다. 모바일에서도 포탈 사이트에 접속하지 않고 바로바로 확인하기 위한 앱들을 살펴봤는데대부분 텍스트 위주의 순위라 결국 다시 포털 사이트에 접속해서 무슨일인지 확인 해야 하는 아쉬움이 있었다. 이미지로 한번에 살펴보면 더 낫지 않을까?그리고 궁금하면 포털 사이트로 들어가면 될 것이고.. 그래서 '실시간 검색' 앱을 만들어봤다. 실시간 검색어와 이미지는 매 1분마다 업데이트하도록 구성했다. 네이버와 다음의 실시간 검색어를 아래처럼 이미지로 확인할 수 있다. 안드로이드 사용자는 구글 플레이를 통해 다음 링크를 눌러서 다운로드하면 된다. https://play.google.com/store/apps/details?id=kr.co.acr..
안드로이드에서 웹서버로 통신할 때 주로 사용하는 포맷이 JSON이다. 웹에 접속해서 데이터를 가져오는 방식은 안드로이드 네트워크 연결하기 (Network On Main Thread Exception 처리) 을 참고하기 바란다. 이렇게 가져온 데이터가 JSON 타입일 경우, 안드로이드에서 이를 처리해서 배열에 저장해 보자. 웹에서 가져온 데이터를 JSONArray로 변환하고, For문을 중첩해서 돌리면서 각 항목의 값을 가져오는 것이다. 그리고 String[][] 2차원 배열에 가져온 값을 저장하는 형태로 매우 간단하다. 소스를 한번 살펴보자. try { JSONArray jArray = new JSONArray(result); String[] jsonName = {"name","age","exam"}; ..
안드로이드에서 네트워크 연결하기 위해 자바에서처럼 코딩하면 십중팔구는 다음과 같은 오류 메시지를 만난다. android.os.NetworkOnMainThreadException 메시지를 살펴보면 Main Thread에서 네트워크를 호출하면서 발생한 오류라고 나온다. 즉, 안드로이드에서 Main Thread에서는 네트워크 연결을 하지 못하도록 한 것이다. 아마도 안드로이드 앱에서 네트워크 호출하면서 에러가 발생한 것을 사용자들이 안드로이드의 오류로 인식하기 때문에 그런 듯 하다. AsyncTask 쓰레드 클래스 이해 그럼 안드로이드에서는 어떻게 네트워크에 연결할 수 있을까? AsyncTask라는 쓰레드 클래스를 상속받아 네트워크 연결하는 부분을 만들면 된다. AsyncTask는 상속시 3개의 Generic..
- Total
- Today
- Yesterday
- 통계
- 클라우드
- 책
- 자바
- ms
- 애플
- 디자인
- Hadoop
- java
- mysql
- 자바스크립트
- 구글
- XML
- 분석
- 맥
- 세미나
- 하둡
- 빅데이터
- 프로젝트
- r
- 모바일
- 아이폰
- 웹
- 마케팅
- 도서
- SCORM
- fingra.ph
- HTML
- 안드로이드
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 | 31 |