목차

CHAPTER 1 이 책에 대하여 _ 1
1.1 예제 소스 코드  2
1.2 피드백  2

CHAPTER 2 아이폰 4S 해부해보기 _ 3
2.1 iOS 5  4
2.2 화면  4
2.3 무선 연결  4
2.4 유선 연결  5
2.5 메모리  5
2.6 카메라  5
2.7 센서  5
2.8 위치 인식  6
2.9 중앙처리장치(CPU)  6
2.10 스피커와 마이크로폰  6
2.11 진동  6
2.12 요약  6

CHAPTER 3 iOS 5 아키텍처와 SDK 프레임워크 _ 7
3.1 iPhone OS가 iOS로  7
3.2 iOS 5 아키텍처 개요  8
3.3 코코아 터치 계층  9
3.4 게임 Kit 프레임워크  11
3.5 iOS 미디어 계층  12
3.6 iOS 코어 서비스 계층  16
3.7 파운데이션 프레임워크  17
3.8 iOS 코어 OS 계층  19

CHAPTER 4 Apple iOS 개발자 프로그램에 가입하기 _ 21
4.1 등록된 애플 개발자  21
4.2 iOS 개발자 프로그램  22
4.3 언제 iOS 개발자 프로그램에 가입할까?  23
4.4 iOS 개발자 프로그램에 가입하기  23
4.5 요약  25

CHAPTER 5 Xcode 4와 iOS 5 SDK 설치하기 _ 26
5.1 Intel 기반 혹은 PowerPC 기반 맥을 확인하는 방법  26
5.2 Xcode 4와 iOS 5 SDK 설치하기  27
5.3 Xcode 시작하기  29

CHAPTER 6 간단한 아이폰 iOS 5 앱 만들기 _ 30
6.1 Xcode 4 시작하기  31
6.2 iOS 앱 유저 인터페이스 만들기  35
6.3 컴포넌트 속성 변경하기  38
6.4 유저 인터페이스에 오브젝트 추가하기  38
6.5 Xcode 4로 iOS 앱 빌드하고 실행하기  40
6.6 빌드 에러 처리하기  41

CHAPTER 7 아이폰에서 iOS 5 앱 테스트하기 - 개발자 인증서 및 프로비저닝 프로파일 _ 42
7.1 iOS 개발 인증서 서명 요청 만들기  43
7.2 iOS 개발 인증서 서명 요청 제출하기  45
7.3 iOS 개발 인증서 설치하기  47
7.4 기기 할당하기  48
7.5 App ID 만들기  49
7.6 iOS 개발 프로비저닝 프로파일 만들기  50
7.7 개발을 위해 아이폰 기기 활성화하기  52
7.8 앱에 App ID 연결하기  52
7.9 iOS와 SDK 버전 호환성  53
7.10 앱을 기기에 설치하기  53
7.11 요약  54

CHAPTER 8 오브젝티브-C 프로그래밍 기초 _ 55
8.1 오브젝티브-C 데이터 타입 및 변수  55
8.2 오브젝티브-C 표현식  56
8.3 if와 else로 오브젝티브-C 흐름 제어하기  61
8.4 for 문을 이용한 반복  63
8.5 do와 while을 이용한 반복  64
8.6 오브젝티브-C do ... while 반복  64

CHAPTER 9 오브젝티브-C로 개발하는 객체지향 프로그래밍 기초 _ 66
9.1 오브젝트란?  66
9.2 클래스란?  67
9.3 오브젝티브-C 클래스 인터페이스 선언  67
9.4 클래스에 인스턴스 변수 추가하기  68
9.5 클래스 메서드 정의하기  68
9.6 오브젝티브-C 클래스 구현 선언하기  70
9.7 클래스 인스턴스 선언 및 초기화하기  71
9.8 Automatic Reference Counting(ARC)  72
9.9 메서드 호출과 인스턴스 데이터 접근하기  73
9.10 프로그램 영역 만들기  73
9.11 하나로 합치기  74
9.12 객체지향 오브젝티브-C 코드 구조잡기  76

CHAPTER 10 아이폰 iOS 5 애플리케이션 개발 아키텍처 개요 _ 79
10.1 Model View Controller(MVC)  79
10.2 타깃-액션 패턴, IBOutlets와 IBActions  80
10.3 서브클래싱  81
10.4 델리게이션  82
10.5 요약  82

CHAPTER 11 상호작용하는 iOS 아이폰 앱 만들기 _ 83
11.1 새 프로젝트 만들기  83
11.2 유저 인터페이스 만들기  84
11.3 예제 애플리케이션 빌드하고 실행하기  86
11.4 액션과 아웃렛 추가하기  86
11.5 액션과 아웃렛을 유저 인터페이스에 연결하기  91
11.6 완성된 애플리케이션 빌드 및 실행하기  94
11.7 요약  95

CHAPTER 12 아이폰 키보드를 감추는 iOS 5 코드 만들기 _ 96
12.1 예제 앱 만들기  96
12.2 사용자가 리턴키를 터치할 때 키보드 감추기  97
12.3 사용자가 백그라운드를 터치했을 때 키보드 감추기  99
12.4 요약  101

CHAPTER 13 아이폰 iOS 5 뷰, 윈도우와 뷰 계층 이해하기 _ 102
13.1 뷰에 대해  102
13.2 UIWindow 클래스  103
13.3 뷰 계층 구조  103
13.4 뷰의 형  105
13.5 요약  107

CHAPTER 14 iOS 5 아이폰 회전, 뷰 크기 변경과 화면배치 처리하기 _ 108
14.1 예제 설정하기  109
14.2 회전 활성화 및 비활성화하기  109
14.3 회전 테스트하기  110
14.4 뷰 자동 크기 변경 설정하기  111
14.5 화면 배치와 크기 변화 코딩하기  114

CHAPTER 15 탭 바를 이용한 iOS 5 아이폰 멀티뷰 애플리케이션 만들기 _ 118
15.1 탭 바 개요  118
15.2 멀티뷰 애플리케이션의 뷰 컨트롤러 이해하기  119
15.3 탭 바 예제 애플리케이션 설정하기  119
15.4 루트 컨트롤러 위치  120
15.5 콘텐트 뷰 컨트롤러 리뷰하기  120
15.6 루트 컨트롤러 초기화하기  122
15.7 애플리케이션 빌드 및 실행하기  124
15.8 컨텐트 뷰 추가하기  125

CHAPTER 16 iOS 5 아이폰 테이블 뷰 애플리케이션 만들기 _ 128
16.1 테이블 뷰  128
16.2 테이블 뷰 델리게이트와 데이터소스  129
16.3 테이블 뷰 스타일  129
16.4 테이블 뷰 셀 스타일  130
16.5 프로젝트 설정하기  131
16.6 테이블 뷰 컴포넌트 추가하기  131
16.7 델리게이트와 데이터소스 연결 만들기  132
16.8 데이터소스 구현하기  132
16.9 애플리케이션 빌드 및 실행하기  135
16.10 테이블 뷰 이미지 추가 및 셀 스타일 변경하기  136
16.11 요약  139

CHAPTER 17 테이블 뷰를 시용한 내비게이션 기반 아이폰 애플리케이션 만들기 _ 140
17.1 내비게이션 컨트롤러 이해하기  140
17.2 예제에 대해  141
17.3 프로젝트 설정하기  142
17.4 프로젝트 파일 리뷰하기  143
17.5 루트 뷰 컨트롤러 추가하기  143
17.6 내비게이션 컨트롤러 만들기  144
17.7 루트 뷰 컨트롤러의 데이터 설정하기  146
17.8 테이블 뷰에 데이터 표시하는 코드 작성하기  147
17.9 두 번째 뷰 컨트롤러 만들기  149
17.10 두 번째 뷰 컨트롤러를 루트 뷰 컨트롤러에 연결하기  150
17.11 두 번째 뷰 컨트롤러 기능 구현하기  152
17.12 내비게이션 코드 추가하기  155
17.13 내비게이션 컨트롤러 스택을 프로그래밍으로 제어하기  156
17.14 요약  157

CHAPTER 18 Xcode 스토리보딩 사용하기 _ 158
18.1 Xcode 스토리보딩  158
18.2 스토리보드 예제 프로젝트 만들기  159
18.3 스토리보드 접근하기  159
18.4 스토리보드에 Scenes 추가하기  161
18.5 스토리보드 Segues 구성하기  162
18.6 스토리보드 전환 구성하기  163
18.7 Scene과 뷰 컨트롤러 연결하기  163
18.8 프로그램으로 스토리보드 Segue 호출하기  165
18.9 segue를 위해 수행할 작업  166
18.10 요약  166

CHAPTER 19 UIPageViewController를 이용한 페이지 기반의 iOS 5 아이폰 애플리케이션 구현하기 _ 167
19.1 UIPageViewController 클래스  167
19.2 UIPageViewController 데이터소스  168
19.3 내비게이션 방향  168
19.4 스파인 위치  169
19.5 UIPageViewController 델리게이트 프로토콜  169
19.6 요약  170

CHAPTER 20 iOS 5 아이폰 UIPageViewController 예제 애플리케이션 _ 171
20.1 Xcode 페이지 기반 애플리케이션 템플릿  171
20.2 프로젝트 만들기  172
20.3 콘텐트 뷰 컨트롤러 추가하기  172
20.4 데이터 모델 만들기  174
20.5 UIPageViewController 초기화하기  178
20.6 UIPageVIewController 애플리케이션 실행하기  180
20.7 요약  181

CHAPTER 21 UIPickerView와 UIDatePicker 컴포넌트 사용하기 _ 182
21.1 DatePicker와 PickerView 컴포넌트  182
21.2 DatePicker 예제  183
21.3 유저 인터페이스 디자인하기  184
21.4 Date Picker 예제 기능 구현하기  185
21.5 메모리 해제하기  186
21.6 아이폰 Date Picker 애플리케이션 빌드 및 실행하기  187

CHAPTER 22 iOS 5 아이폰 UIPickerView 예제 _ 188
22.1 iOS 5 PickerView 프로젝트 만들기  188
22.2 UIPickerView 델리게이트와 데이터소스  188
22.3 pickerViewController.h 파일  189
22.4 유저 인터페이스 디자인하기  190
22.5 배열 초기화하기  191
22.6 데이터소스 프로토콜 구현하기  192
22.7 델리게이트 구현하기  193
22.8 키보드 감추기  194
22.9 메모리 관리  194
22.10 애플리케이션 테스트하기  195

CHAPTER 23 iOS 5에서 디렉터리 다루기 _ 196
23.1 애플리케이션 Documents 디렉터리  197
23.2 오브젝티브-C NSFileManager, NSFileHandle와 NSData 클래스  197
23.3 오브젝티브-C의 경로명 이해하기  198
23.4 NSFileManager 인스턴스 오브젝트 만들기  198
23.5 현재 작업 디렉터리 확인하기  198
23.6 Documents 디렉터리 확인하기  199
23.7 Temporary 디렉터리 확인하기  200
23.8 디렉터리 변경하기  201
23.9 새로운 디렉터리 만들기  202
23.10 디렉터리 삭제하기  203
23.11 디렉터리 내용 목록 표시하기  203
23.12 파일이나 디렉터리 속성 구하기  204

CHAPTER 24 iOS 5의 아이폰 파일 다루기 _ 206
24.1 NSFileManager 인스턴스 만들기  206
24.2 파일이 존재하는지 확인하기  207
24.3 두 파일의 내용 비교하기  207
24.4 파일의 Readable/Writable/Executable/Deletable 상태 확인하기  208
24.5 파일 옮기기와 이름 바꾸기  209
24.6 파일 복사하기  209
24.7 파일 제거하기  210
24.8 Symbolic Link 만들기  210
24.9 NSFileManager로 파일 읽고 쓰기  211
24.10 NSFileHandle 클래스로 파일 작업하기  212
24.11 NSFileHandle 오브젝트 만들기  212
24.12 NSFileHandle 파일 Offsets과 Seeking  212
24.13 파일에서 데이터 읽기  213
24.14 파일에 데이터 쓰기  214
24.15 파일 자르기  215
24.16 요약  215

CHAPTER 25 iOS 5 아이폰 디렉터리 관리 및 파일 입출력 예제 _ 216
25.1 예제 아이폰 애플리케이션  216
25.2 애플리케이션 프로젝트 설정하기  216
25.3 액션과 아웃렛 정의하기  217
25.4 유저 인터페이스 디자인하기  218
25.5 애플리케이션 시작 시 데이터 파일 체크하기  219
25.6 액션 메서드 구현하기  221
25.7 예제 빌드 및 실행하기  222

CHAPTER 26 iOS 5 앱에서 iCloud Storage 사용 준비하기 _ 223
26.1 iCloud란?  223
26.2 iCloud Data Storage 서비스  224
26.3 iCloud Storage를 사용하는 애플리케이션 준비하기  224
26.4 iOS 5 iCloud 활성화된 App ID 만들기  225
26.5 iCloud 활성화된 프로비저닝 프로파일 생성 및 설치하기  226
26.6 iCloud Entitlements 파일 생성하기  226
26.7 수작업으로 Entitlements 파일 생성하기  228
26.8 Ubiquity Container URL 정의하기  229
26.9 요약  229

CHAPTER 27 iOS 5 UIDocument 클래스로 파일 관리하기 _ 230
27.1 UIDocument 클래스  230
27.2 UIDocument 클래스 서브클래싱  231
27.3 충돌 해결과 도큐먼트 상태  231
27.4 UIDocument 예제 애플리케이션  232
27.5 UIDocument 서브클래스 만들기  232
27.6 아웃렛과 액션 선언하기  233
27.7 유저 인터페이스 디자인하기  234
27.8 애플리케이션 데이터 구조 구현하기  235
27.9 contentsForType 메서드 구현하기  236
27.10 loadFromContents 메서드 구현하기  237
27.11 앱 시작 시 도큐먼트 로드하기  238
27.12 도큐먼트 콘텐트 저장하기  242
27.13 애플리케이션 테스트하기  243
27.14 요약  243

CHAPTER 28 iOS 5 아이폰 애플리케이션에서 iCloud Storage 사용하기 _244
28.1 iCloud Usage 사용지침  244
28.2 iCloud 접근을 위해 iCloudStore 애플리케이션 준비하기  245
28.3 뷰 컨트롤러 구성하기  246
28.4 UBUIQUITY_CONTAINER_URL 상수 선언하기  247
28.5 viewDidLoad 메서드 구현하기  248
28.6 metadataQueryDidFinishGathering: 메스드 구현하기  252
28.7 saveDocument 메서드 구현하기  255
28.8 아이폰에서 iCloud Document와 Data Storage 활성화하기  256
28.9 iCloud 애플리케이션 실행하기  256
28.10 iCloud 기반 도큐먼트 리뷰 및 삭제하기  257
28.11 로컬 파일을 어디서나 사용할 수 있게 만들기  257
28.12 요약  258

CHAPTER 29 iCloud를 이용한 아이폰 iOS 5 Key-Value Data 동기화하기 _ 259
29.1 iCloud Key-Value Data Storage  259
29.2 애플리케이션 간 데이터 공유하기  261
29.3 Data Storage 제약점  261
29.4 충돌 해결  261
29.5 Key-Value 변경 시 노티피케이션 받기  261
29.6 iCloud Key-Value Data Storage 예제  262
29.7 iCloud Key Value Data Storage를 위해 애플리케이션 활성화하기  262
29.8 뷰 컨트롤러 구현하기  263
29.9 viewDidLoad 메서드 수정하기  263
29.10 노티피케이션 메서드 구현하기  265
29.11 saveData 메서드 구현하기  265
29.12 유저 인터페이스 디자인하기  266
29.13 애플리케이션 테스트하기  266

CHAPTER 30 아카이빙을 이용한 iOS 5 아이폰 데이터 영구 저장 _ 268
30.1 아카이빙  268
30.2 아카이빙 예제 애플리케이션  269
30.3 액션 및 아웃렛 구현하기  270
30.4 메모리 관리  271
30.5 유저 인터페이스 디자인하기  271
30.6 시작 시 아카이브 파일 존재 확인하기  272
30.7 액션 메서드에서 오브젝트 데이터 아카이빙하기  274
30.8 애플리케이션 테스트하기  275
30.9 요약  275

CHAPTER 31 SQLite를 사용한 iOS 5 아이폰 데이터베이스 구현 _ 276
31.1 SQLite란?  276
31.2 구조적 질의 언어(SQL)  277
31.3 맥 OS X에서 SQLite 사용하기  277
31.4 SQLite 연동을 위한 아이폰 애플리케이션 프로젝트 준비하기  279
31.5 주요 SQLite 기능들  280
31.6 SQLite 데이터베이스 선언하기  281
31.7 데이터베이스 열기 및 생성하기  281
31.8 SQL 문 준비 및 실행하기  282
31.9 데이터베이스 테이블 생성하기  283
31.10 데이터베이스 테이블에서 데이터 가져오기  284
31.11 SQLite 데이터베이스 닫기  285
31.12 요약  285

CHAPTER 32 SQLite 기반 iOS 5 아이폰 애플리케이션 예제 _ 286
32.1 SQLite 아이폰 애플리케이션 예제에 대해  286
32.2 SQLite 애플리케이션 프로젝트 준비 및 생성하기  286
32.3 sqlite3.h 임포트 및 데이터베이스 참조 선언하기  287
32.4 아웃렛 및 액션 만들기  288
32.5 메모리 해제하기  289
32.6 데이터베이스와 테이블 만들기  290
32.7 SQLite 데이터베이스에 데이터를 저장하는 코드 구현하기  291
32.8 SQLite 데이터베이스에서 데이터를 가져오는 코드 구현하기  292
32.9 유저 인터페이스 디자인하기  294
32.10 애플리케이션 빌드 및 실행하기  295
32.11 요약  296

CHAPTER 33 코어 데이터를 이용한 iOS 5 아이폰 데이터베이스 작업 _ 297
33.1 코어 데이터 스택  297
33.2 매니지드 오브젝트  298
33.3 매니지드 오브젝트 콘텍스트  299
33.4 매니지드 오브젝트 모델  299
33.5 영구 저장소 코디네이터  300
33.6 영구 오브젝트 저장소  300
33.7 엔티티 디스크립션 정의  300
33.8 매니지드 오브젝트 콘텍스트 얻기  302
33.9 엔티티 디스크립션 얻기  302
33.10 매니지드 오브젝트 만들기  303
33.11 매니지드 오브젝트 속성 읽기 및 쓰기  303
33.12 매니지드 오브젝트 구해오기  304
33.13 조건에 따른 매니지드 오브젝트 가져오기  304
33.14 요약  305

CHAPTER 34 iOS 5 아이폰 코어 데이터 사용지침 _ 306
34.1 아이폰 코어 데이터 예제 애플리케이션  306
34.2 코어 데이터 기반의 아이폰 애플리케이션 만들기  306
34.3 엔티티 디스크립션 만들기  307
34.4 뷰 컨트롤러 추가하기  308
34.5 뷰 컨트롤러에 액션 및 아웃렛 추가하기  310
34.6 유저 인터페이스 디자인하기  311
34.7 코어 데이터를 이용하여 영구 저장소에 데이터 저장하기  312
34.8 코어 데이터를 이용하여 영구 저장소에서 데이터 가져오기  313
34.9 메모리 해제하기  315
34.10 예제 애플리케이션 빌드 및 실행하기  315
34.11 요약  316

CHAPTER 35 iOS 5 아이폰 멀티터치, 탭과 제스처에 대해 _ 317
35.1 리스폰더 체인  317
35.2 다음 리스폰더로 이벤트 전달하기  318
35.3 제스처  319
35.4 탭  319
35.5 터치  319
35.6 터치 노티피케이션 메서드  319
35.7 요약  320

CHAPTER 36 iOS 5 아이폰 터치, 멀티터치와 탭 예제 애플리케이션 _ 321
36.1 iOS 5 아이폰 탭과 터치 예제 애플리케이션  321
36.2 iOS 터치 프로젝트 만들기  322
36.3 아웃렛 만들기  322
36.4 유저 인터페이스 디자인하기  323
36.5 뷰에서 멀티터치 활성화하기  324
36.6 touchesBegan 메서드 구현하기  324
36.7 touchesMoved 메서드 구현하기  325
36.8 touchesEnded 메서드 구현하기  325
36.9 터치의 좌표 구하기  326
36.10 터치 예제 애플리케이션 빌드 및 실행하기  326

CHAPTER 37 iOS 5 아이폰 터치 스크린 제스처 인식하기 _ 327
37.1 iOS 5 아이폰 제스처 예제 애플리케이션  328
37.2 예제 프로젝트 만들기  328
37.3 아웃렛 만들기  329
37.4 유저 인터페이스 디자인하기  330
37.5 touchesBegan 메서드 구현하기  330
37.6 touchesMoved 메서드 구현하기  331
37.7 touchesEnded 메서드 구현하기  331
37.8 제스처 예제 빌드 및 실행하기  332
37.9 요약  332

CHAPTER 38 iOS 5 Gesture Recognizers를 통한 제스처 인식 _ 333
38.1 UIGestureRecognizer 클래스  333
38.2 인식기 액션 메시지  334
38.3 불연속 및 연속된 제스처  335
38.4 제스처에서 데이터 얻기  335
38.5 탭 제스처 인식하기  335
38.6 핀치 제스처 인식하기  336
38.7 회전 제스처 인식하기  336
38.8 팬과 드래깅 제스처 인식하기  336
38.9 스와이프 제스처 인식하기  337
38.10 롱 터치(터치와 홀드) 제스처 인식하기  338
38.11 요약  338

CHAPTER 39 아이폰 iOS 5 제스처 인식 사용지침 _ 339
39.1 제스처 인식 프로젝트 만들기  339
39.2 라벨 아웃렛 설정하기  339
39.3 유저 인터페이스 디자인하기  340
39.4 제스처 인식기 구성하기  341
39.5 액션 메서드 추가하기  342
39.6 제스처 인식 애플리케이션 테스트하기  343

CHAPTER 40 쿼츠로 iOS 5 아이폰 2D 그래픽 그리기 _ 344
40.1 코어 그래픽과 쿼츠 2D 소개  344
40.2 drawRect 메서드  345
40.3 점, 좌표와 픽셀  345
40.4 그래픽 콘텍스트  346
40.5 쿼츠 2D에서 색 작업하기  346
40.6 요약  348

CHAPTER 41 쿼츠 2D와 코어 이미지를 사용하는 iOS 5 아이폰 그래픽 사용지침 _ 349
41.1 iOS 아이폰 드로잉 예제 애플리케이션  349
41.2 새로운 프로젝트 만들기  349
41.3 UIView 서브클래스 만들기  350
41.4 UIView 서브클래스에 drawRect 메서드 위치시키기  350
41.5 선 그리기  351
41.6 경로 그리기  354
41.7 사각형 그리기  355
41.8 타원 및 원 그리기  355
41.9 색으로 경로 채우기  356
41.10 호 그리기  358
41.11 3차 베지어 곡선 그리기  359
41.12 2차 베지어 곡선 그리기  360
41.13 점선 그리기  361
41.14 그래픽 콘텍스트에 이미지 그리기  362
41.15 코어 이미지 프레임워크를 통한 이미지 필터링  363
41.16 요약  365

CHAPTER 42 코어 애니메이션을 이용한 iOS 5 아이폰 애니메이션 기초 _ 366
42.1 UIView 코어 애니메이션 블록  366
42.2 애니메이션 커브 이해하기  368
42.3 애니메이션 종료 시 노티피케이션 받기  368
42.4 아핀 변환 수행하기  369
42.5 동시에 수행되는 변환  370
42.6 애니메이션 예제 애플리케이션 만들기  370
42.7 인터페이스 파일 구현하기  370
42.8 UIView에서 그리기  371
42.9 화면 터치 인식 및 애니메이션 수행하기  372
42.10 애니메이션 애플리케이션 빌드 및 실행하기  374
42.11 요약  374

CHAPTER 43 iOS 5 아이폰 앱에 iAds 연동하기 _ 375
43.1 iOS 아이폰 광고 옵션들  376
43.2 iAds 광고 포맷  376
43.3 iAds를 표시하는 기본 규칙  377
43.4 iAds 아이폰 예제 애플리케이션 만들기  377
43.5 Xcode 프로젝트에 iAds 프레임워크 추가하기  378
43.6 뷰 컨트롤러 구성하기  378
43.7 유저 인터페이스 디자인하기  379
43.8 Banner Ad 만들기  379
43.9 광고 표시하기  380
43.10 기기 방향에 따라 광고 포맷 변경하기  382
43.11 델리게이트 메서드 구현하기  383
43.12 요약  384

CHAPTER 44 iOS 5 아이폰 멀티태스킹 개요 _ 385
44.1 iOS 애플리케이션 상태 이해하기  385
44.2 멀티태스킹 애플리케이션의 수명주기에 대한 개념  386
44.3 iOS 애플리케이션에서 멀티태스킹 비활성화하기  387
44.4 멀티태스킹 지원 체크하기  389
44.5 지원되는 백그라운드 실행 형태  389
44.6 백그라운드 실행 규칙  390
44.7 로컬 노티피케이션 예약하기  391

CHAPTER 45 iOS 5 아이폰 로컬 노티피케이션 예약하기 _ 392
45.1 로컬 노티피케이션 아이폰 앱 프로젝트 만들기  392
45.2 애플리케이션 델리게이트 메서드 위치시키기  393
45.3 프로젝트에 사운드 파일 추가하기  393
45.4 로컬 노티피케이션 예약하기  394
45.5 애플리케이션 테스트하기  394
45.6 예약된 노티피케이션 취소하기  395
45.7 즉시 로컬 노티피케이션 호출하기  396
45.8 요약  396

CHAPTER 46 iOS 5 코어 로케이션 프레임워크를 이용하여 아이폰 위치 정보 얻기 _ 397
46.1 코어 로케이션의 기초  397
46.2 로케이션 정확도 설정하기  398
46.3 거리 필터 구성하기  399
46.4 로케이션 매니저 델리게이트  399
46.5 CLLocation 오브젝트에서 위치 정보 얻기  400
46.6 거리 계산하기  401
46.7 위치 정보와 멀티태스킹  401
46.8 요약  401

CHAPTER 47 iOS 5 아이폰 로케이션 예제 애플리케이션 _ 402
47.1 iOS 5 아이폰 로케이션 예제 애플리케이션 만들기  402
47.2 프로젝트에 코어 로케이션 프레임워크 추가하기  402
47.3 뷰 컨트롤러 구성하기  403
47.4 유저 인터페이스 디자인하기  404
47.5 CLLocationManager 오브젝트 만들기  405
47.6 액션 메서드 구현하기  406
47.7 애플리케이션 델리게이트 메서드 구현하기  406
47.8 메모리 해제하기  408
47.9 아이폰 로케이션 애플리케이션 빌드 및 실행하기  409

CHAPTER 48 MapKit과 MKMapView 클래스를 이용하여 아이폰에서 지도 다루기 _ 411
48.1 MapKit 프레임워크에 대해  411
48.2 Map Regions  412
48.3 아이폰 MKMapView 사용지침  412
48.4 아이폰 지도 사용지침 만들기  412
48.5 Xcode 프로젝트에 MapKit 프레임워크 추가하기  413
48.6 MapView를 위한 아웃렛 선언하기  413
48.7 MKView를 만들고 아웃렛 연결하기  414
48.8 툴바 아이템 추가하기  415
48.9 MapView 영역 변경하기  416
48.10 지도 형식 변경하기  417
48.11 아이폰 MapView 애플리케이션 테스트하기  418
48.12 사용자 이동에 따른 Map View 갱신하기  419
48.13 맵 뷰에 기본적인 주석 추가하기  420

CHAPTER 49 아이폰 카메라와 포토 라이브러리 접근하기 _ 422
49.1 iOS 5 UIImagePickerController 클래스  422
49.2 UIImagePickerController 인스턴스 만들고 구성하기  423
49.3 UIImagePickerController 델리게이트 구성하기  424
49.4 기기의 지원기능 확인하기  426
49.5 무비와 이미지 저장하기  427
49.6 요약  428

CHAPTER 50 iOS 5 아이폰 카메라 예제 애플리케이션 _ 429
50.1 예제 애플리케이션에 대해  429
50.2 카메라 프로젝트 만들기  430
50.3 프레임워크 추가하기  430
50.4 프로토콜, 아웃렛, 액션 구성하기  430
50.5 유저 인터페이스 디자인하기  431
50.6 액션 메서드 구현하기  432
50.7 델리게이트 메서드 구현하기  434
50.8 메모리 해제하기  435
50.9 애플리케이션 빌드 및 실행하기  435

CHAPTER 51 iOS 5 아이폰 애플리케이션에서 비디오 재생하기 _ 437
51.1 MPMoviePlayerController 클래스에 대해  437
51.2 지원하는 비디오 포맷  438
51.3 아이폰 무비 플레이어 예제 애플리케이션  438
51.4 MediaPlayer 프레임워크 추가하기  438
51.5 액션 메서드와 MoviePlayer 인스턴스 선언하기  438
51.6 유저 인터페이스 디자인하기  439
51.7 프로젝트 리소스에 비디오 파일 추가하기  440
51.8 액션 메서드 구현하기  440
51.9 타깃-액션 노티피케이션 메서드  441
51.10 애플리케이션 빌드 및 실행하기  441
51.11 네트워크에 있는 비디오 파일 접근하기  442

CHAPTER 52 AVAudioPlayer를 이용하여 아이폰에서 오디오 재생하기 _443
52.1 지원하는 오디오 포맷  443
52.2 재생 노티피케이션 받기  444
52.3 재생 모니터링 및 제어하기  445
52.4 아이폰 오디오 예제 애플리케이션 만들기  445
52.5 AVFoundation 프레임워크 추가하기  445
52.6 프로젝트 리소스에 오디오 파일 추가하기  446
52.7 액션과 아웃렛 만들기  446
52.8 액션 메서드 구현하기  447
52.9 AVAudioPlayer 오브젝트 만들고 초기화하기  447
52.10 AVAudioPlayerDelegate 프로토콜 메서드 구현하기  448
52.11 유저 인터페이스 디자인하기  449
52.12 메모리 해제하기  450
52.13 애플리케이션 빌드 및 실행하기  450

CHAPTER 53 AVAudioRecorder로 아이폰에서 오디오 녹음하기 _ 451
53.1 아이폰 AVAudioRecorder에 대해  451
53.2 프로젝트 만들기  452
53.3 액션과 아웃렛 선언하기  452
53.4 AVAudioRecorder 인스턴스 만들기  453
53.5 액션 메서드 구현하기  454
53.6 델리게이트 메서드 구현하기  456
53.7 유저 인터페이스 디자인하기  457
53.8 메모리 해제하기  458
53.9 애플리케이션 테스트하기  458

CHAPTER 54 아이폰 iOS 5 애플리케이션에서 트위터 연동하기 _ 459
54.1 iOS 5 트위터 프레임워크  459
54.2 iOS 5 Accounts 프레임워크  460
54.3 TWTweetComposeViewController 클래스  461
54.4 요약  463

CHAPTER 55 아이폰 iOS 5 TWTweetComposeViewController 트위터 예제 애플리케이션 _ 464
55.1 아이폰 트위터 애플리케이션에 대해  464
55.2 TwitterApp 프로젝트 만들기  464
55.3 아웃렛, 액션, 변수 선언하기  465
55.4 TWTweetComposeViewController 인스턴스 만들기  466
55.5 액션 메서드 구현하기  467
55.6 메모리 해제하기  469
55.7 유저 인터페이스 디자인하기  470
55.8 애플리케이션 빌드 및 실행하기  471

CHAPTER 56 앱 스토어에 애플리케이션 제출 및 준비하기 _ 472
56.1 iOS 배포 인증서 서명 요청 만들기  472
56.2 인증서 서명 요청 제출하기  473
56.3 배포 인증서 설치하기  473
56.4 앱 스토어 배포 프로비저닝 프로파일 만들기  474
56.5 애플리케이션에 아이콘 추가하기  474
56.6 배포를 위해 애플리케이션 아카이브하기  475
56.7 아이튠즈 커넥터에서 애플리케이션 구성하기  478

찾아보기 480