목차
Chapter 1 구글의 야심작, 안드로이드 둘러보기
   SECTION 01 WIPI 의무화의 폐지 ... 18
      01 WIPI로부터 얻은 것은 무엇인가 ... 18
      02 WIPI의 문제점 ... 19
      03 WIPI 의무화 폐지의 찬반 논쟁 ... 19
   SECTION 02 치열해지는 스마트폰 시장 ... 21
      01 스마트폰의 시장 동향 ... 21
      02 OHA(Open Handset Alliance) ... 23
   SECTION 03 안드로이드는 무엇인가 ... 25
      01 안드로이드의 개념 ... 25
      02 안드로이드의 특징 ... 26
      03 안드로이드 아키텍처 ... 27
   SECTION 04 안드로이드 개발자 대회 ... 30
      01 엄청난 상금이 걸린 개발자 대회 ... 30
      02 개발자 대회 수상작 ... 32
   SECTION 05 앱스토어와 안드로이드 마켓 ... 36
      01 애플의 앱스토어 ... 36
      02 구글의 안드로이드 마켓 ... 37
      03 두 시장의 비교 ... 38
Chapter 2 안드로이드 SDK 다운로드 및 설치하기
   SECTION 01 자바 개발 툴킷 설치하기 ... 42
   SECTION 02 안드로이드 SDK 설치하기 ... 46
   SECTION 03 이클립스 3.4(Ganymede) 설치하기 ... 50
   SECTION 04 이클립스에 플러그인 설치하기 ... 54
   SECTION 05 테스트 프로젝트 생성하기 ... 59
Chapter3 휴대폰 화면에 문자열 출력하기
   SECTION 01. 프로그래밍의 시작, 프로젝트 생성하기 ... 64
      01 새 프로젝트 생성하기 ... 64
      02 에뮬레이터 실행하기 ... 67
      03 생성된 폴더와 파일 ... 69
   SECTION 02. 화면에 문자열 출력하기 ... 71
      01 'HelloAndroid.java' 파일 ... 71
      02 'R.java' 파일 ... 72
      03 'main.xml' 파일 ... 74
      04 'strings.xml' 파일 ... 74
   SECTION 03. 프로그래밍으로 화면 레이아웃 구성하기 ... 76
      01 클래스 import하기 ... 76
      02 TextView 클래스 ... 77
   SECTION 04. XML로 화면 레이아웃 구성하기 ... 79
      01 XML 레이아웃 파일 ... 79
      02 XML 레이아웃 파일 수정하기 ... 80
Chapter 4 애플리케이션의 구조와 사용자 인터페이스 살펴보기
   SECTION 01 하나의 화면, Activity ... 86
      01 Activity는 무엇인가 ... 86
      02 Activity 라이프사이클 ... 88
      03 Intent ... 90
   SECTION 02 Intent Receiver, Service, Content Provider ... 91
      01 Intent Receiver ... 91
      02 Service ... 91
      03 Content Provider ... 92
   SECTION 03 프로세스 라이프사이클 ... 93
      01 foreground activity ... 93
      02 visible activity ... 93
      03 background activity ... 93
      04 empty process ... 94
   SECTION 04 화면 구성 요소들의 계층 구조 ... 95
      01 시각 레이아웃 View ... 95
      02 View들의 집합 ViewGroup ... 95
      03 트리 구조의 사용자 인터페이스 ... 96
      04 LayoutParams ... 96
   SECTION 05 레이아웃 객체 ... 98
      01 FrameLayout ... 98
      02 LinearLayout ... 98
      03 TableLayout ... 100
      04 AbsoluteLayout ... 100
      05 RelativeLayout ... 101
      06 View Groups의 요약 정리 ... 102
   SECTION 06 XML을 이용한 화면 디자인 ... 103
      01 XML을 이용한 화면 디자인 ... 103
      02 XML 리소스 불러오기 ... 105
   SECTION 07 후킹, 이벤트, 테마 ... 107
      01 화면 엘리먼트의 후킹 ... 107
      02 UI 이벤트 입력 처리하기 ... 108
      03 애플리케이션에 테마 적용하기 ... 109
      04 UI 관련 용어 정리 ... 111
Chapter 5 노트패드 애플리케이션 실습 1
   SECTION 01 노트패드 프로젝트 준비하기 ... 116
      01 노트패트 프로젝트 설치하기 ... 116
      02 Notepadv1 프로젝트 생성하기 ... 117
   SECTION 02 데이터 저장 및 검색하기 _ SQLite ... 121
      01 NotesDbAdapter 클래스 ... 121
      02 NotesDbAdapter 클래스의 메소드 ... 122
   SECTION 03. Notepadv1 애플리케이션 레이아웃 ... 123
      01 notepad_list.xml ... 123
      02 notes_row.xml ... 126
   SECTION 04 Notepadv1 클래스 ... 128
      01 오버라이드 메소드의 개요 ... 128
      02 ListActivity에서 상속하기 ... 129
      03 onCreate() 메소드 프로그래밍 ... 130
      04 onCreateOptionsMenu() 메소드 프로그래밍 ... 131
      05 onOptionsltemSelected() 메소드 프로그래밍 ... 132
      06 createNote() 메소드 프로그래밍 ... 133
      07 fillData() 메소드 프로그래밍 ... 134
   SECTION 05 에뮬레이터 실행하기 ... 136
Chapter6 노트패드 애플리케이션 실습 2
   SECTION 01 Notepadv2 프로젝트 생성하기 ... 140
   SECTION 02 Delete Note 메뉴 구현하기 ... 143
      01 Delete Note 메뉴 추가하기 ... 143
      02 Delete Note 메뉴 프로그래밍 ... 144
   SECTION 03 Intent 클래스 ... 145
      01 Intent 클래스와 startActivityForResult() ... 145
      02 번들에 데이터 채우기 ... 146
      03 onActivityResult() 메소드 구현하기 ... 148
   SECTION 04 또 다른 Activity 만들기 ... 151
      01 화면 레이아웃 만들기 ... 151
      02 NoteEdit 클래스 생성하기 ... 153
      03 NoteEdit 클래스 프로그래밍 ... 155
      04 onClick() 메소드 완성하기 ... 159
   SECTION 05 AndroidManifest.xml 파일 수정하기 ... 161
   SECTION 06 에뮬레이터 실행하기 ... 163
Chapter 7 노트패드 애플리케이션 실습 3
   SECTION 01 Notepadv3 프로젝트 생성하기 ... 168
      01 Notepadv3 프로젝트 생성하기 ... 168
      02 Notepadv2 프로젝트의 문제점 ... 169
   SECTION 02 NoteEdit의 OnCreate() 메소드 ... 171
      01 데이터베이스에 직접 접근하기 ... 171
      02 savedlnstanceState로 KEY_ROWID 검색하기 ... 172
      03 onClick() 핸들러 메소드 ... 173
   SECTION 03 populateFields() 메소드 ... 177
   SECTION 04 라이프사이클 메소드 ... 178
   SECTION 05 onListItemClick() 메소드 ... 181
   SECTION 06 Notepadv3 애플리케이션 실행하기 ... 182
Chapter 8 이미지를 보여주는 애플리케이션 프로그래밍하기
   SECTION 01 DisplayImage 프로젝트 생성하기 ... 186
   SECTION 02 화면 레이아웃 바꾸기 ... 188
   SECTION 03 ImageView 클래스 생성하기 ... 190
   SECTION 04 이미지 리소스 추가하기 ... 193
   SECTION 05 이미지 보여주기 ... 196
      01 필요한 변수 선언하기 ... 196
      02 draw() 메소드 오버라이드 ... 198
   SECTION 06 바탕색 감추기, 투명색 처리 ... 201
      01 투명색 처리의 개요 ... 201
      02 포토샵에서 투명색 처리하기 ... 202
      03 페이트샵에서 투명색 처리하기 ... 203
      04 'R.java' 파일에 추가되는 리소스 ... 205
   SECTION 07 ImageView 클래스 분석하기 ... 207
Chapter 9장 이미지가 움직인다! 스레드 프로그래밍
   SECTION 01 스레드의 기본 개념 ... 212
   SECTION 02 AnimateImage 프로젝트 생성하기 ... 213
   SECTION 03 AnimateView 클래스 ... 215
      01 AnimateView 클래스 생성하기 ... 215
      02 생성된 소스 수정하기 ... 216
   SECTION 04 이미지 리소스 추가하기 ... 218
   SECTION 05 스레드 클래스 프로그래밍 ... 219
      01 ImageThread 클래스 생성하기 ... 219
      02 Animatelmage 프로젝트 생성하기 ... 222
   SECTION 06. 키 입력 처리하기 ... 224
      01 키 입력을 위한 Animatelmage 프로젝트 생성하기 ... 224
      02 키 입력 처리하기 ... 226
Chapter 10 구글 맵을 휴대폰으로 이용하기
   SECTION 01 GoogleMap 프로젝트 ... 234
      01 GoogleMap 프로젝트 생성하기 ... 234
      02 'R.java' 파일 생성하기 ... 235
   SECTION 02 화면 레이아웃 구성하기 ... 236
   SECTION 03 'AndroidManifest.xml' 파일 수정하기 ... 238
   SECTION 04 GoogleMap.java 소스 프로그래밍 ... 241
   SECTION 05 Maps API Key ... 245
      01 'debug.keystore' 파일 ... 245
      02 MD5 Fingerprint 구하기 ... 246
      03 JDK 경로 설정하기 ... 248
      04 Maps API Key 등록하기 ... 250
   SECTION 06 전 세계 각 지역의 위치 구하기 ... 253
   SECTION 07 GoogleMap.java 소스 분석하기 ... 258
Chapter 11 스네이크 게임 만들기 1
   SECTION 01 스네이크 게임 이해하고 프로젝트 생성하기 ... 262
      01 스테이크 게임 이해하기 ... 262
      02 GoSnake 프로젝트 생성하기 ... 263
   SECTION 02 화면 레이아웃 바꾸기 ... 265
      01 FrameLayout 구성하기 ... 265
      02 스트링 정의하기 ... 267
   SECTION 03 TileView 클래스 생성하기 ... 269
      01 TileView 클래스의 개요 ... 269
      02 TileView 클래스 생성하기 ... 269
   SECTION 04 SnakeView 클래스 생성하기 ... 273
   SECTION 05 리소스 추가하기 ... 276
      01 'attrs.xml' 추가하기 ... 276
      02 이미지 추가하기 ... 277
   SECTION 06 TileView.java 프로그래밍 ... 279
      01 변수 선언하기 ... 279
      02 Override 메소드 추가하기 ... 279
      03 메소드 프로그래밍 ... 281
   SECTION 07 SnakeView.java 프로그래밍 ... 286
      01 오버라이드 메소드 추가하기 ... 286
      02 생성자 및 메소드 프로그래밍 ... 287
      03 onKeyDown() 프로그래밍 ... 289
Chapter 12 스네이크 게임 만들기 2
   SECTION 01 스네이크와 애플 그리기 ... 294
      01 제네릭 프로그래밍 ... 294
      02 Coordinate 클래스 ... 295
      03 intiNewGame() 메소드 ... 296
      04 addRandomApple() 메소드 ... 297
      05 updateSnake()와 updateApples() 메소드 ... 298
   SECTION 02 스네이크 애니메이트하기 ... 300
   SECTION 03 키 입력 처리하기 ... 303
   SECTION 04 충돌 체크하기 ... 306
      01 벽과의 충돌 체크하기 ... 306
      02 자기 몸과의 충돌 체크하기 ... 307
      03 아이템과의 충돌 체크하기 ... 310
   SECTION 05 게임 정보 저장하고 읽어오기 ... 311
      01 게임 정보 저장하기 ... 311
      02 게임 정보 읽어오기 ... 314
Chapter 13 무엇이든지 판다! 안드로이드 마켓
   SECTION 01 개발자로 등록하기 ... 318
      01 안드로이드 마켓의 개요 ... 318
      02 개발자로 등록하기 ... 319
   SECTION 02 개발자 등록 완료하기 ... 323
      01 개발자 등록 완료 메시지 ... 323
      02 안드로이드 데브폰 1의 구입 절차 ... 324
      03 Edit profile 확인하기 ... 326
   SECTION 03 애플리케이션 인증하기 ... 328
      01 'keytool.exe' 사용하기 ... 328
      02 애플리케이션 패키지 만들기 ... 330
      03 'jarsigner.exe' 사용하기 ... 332
   SECTION 04 애플리케이션 업로드와 퍼블리싱하기 ... 333
      01 애플리케이션 업로드하기 ... 333
      02 퍼블리싱과 언퍼블리싱하기 ... 336
   SECTION 05. 안드로이드 마켓의 흐름 ... 340
찾아보기 ... 342
닫기