아이폰 SDK 애플리케이션 개발
- 원서명iPhone SDK Application Development: Building Applications for the AppStore (ISBN 9780596154059)
- 지은이조나단 지드자스키
- 옮긴이김동호
- ISBN : 9788960771246
- 30,000원
- 2010년 02월 26일 펴냄 (절판)
- 페이퍼백 | 488쪽 | 185*235mm
- 시리즈 : 모바일 프로그래밍
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
애플 SDK를 사용해 아이폰과 아이팟터치용 게임과 모바일 애플리케이션을 만드는 데 필요한 실용적인 지식을 제공한다. 다양한 예제를 통해 개발 패러다임과 오브젝티브C를 소개하고, 완벽한 기능의 애플리케이션 설계에 필요한 SDK의 다양한 프레임워크를 모두 다룬다.
[ 소개 ]
매우 종합적인 내용을 다루는 책으로서 아이폰 개발자들에게 요긴한 수많은 예제 프로젝트를 잘 설명해놓았다. 저자 조나단의 글은 권위 있고 명쾌하며 풍부한 경험이 가득 담겨있다.
2008년 3월 애플이 SDK를 공식 발표했을 때 엔터프라이즈 개발자들은 환호했다. 오랫동안 기다려온 개발자들에게 아이폰의 상업용 애플리케이션을 설계할 수 있는 개발환경과 개인사용자에게 배포할 수 있는 공급 채널이 마침내 열렸기 때문이다. 이 책은 앱스토어에 특화된 애플리케이션 개발에 사용되는 공식 애플 SDK와 API에 대해 설명한다.
애플 SDK는 모바일 소프트웨어 개발에 있어 대단한 발전을 이뤘으며 벼락부자를 만드는 환상적인 관문을 제공했다. SDK 개발자는 자신이 만든 제품을 즉시 구매할 수 있는 수백만의 사용자와 직접 연결된 채널을 갖게 된다. 오랫동안 기다려온 애플의 NDA 철회는 환상적인 디바이스인 아이폰과 사업모델에 대한 열광을 극대화시키는 결과를 낳았다. 아이폰 SDK가 가져다 주는 이익과 혁신의 기회에 대해서는 의심의 여지가 없다.
그러나 이 열광은 바로 현실적인 한계에 부딪히게 된다. 아이폰 개발자들은 여전히 일면 폐쇄적인 디바이스 플랫폼상에서 개발해야 한다. 개발자가 만든 애플리케이션은 접근방식을 제약하는 제한된 샌드박스에서 실행되고 애플은 디바이스의 좀더 강력한 리소스에 접근하기 위해 비공개 API를 사용하는 개발자에게 제약을 둔다. 개발자는 개발가능한 것에 대한 잘못된 추정으로 헛된 코딩 시간을 보내지 않도록 개발환경의 한계에 대해 알아둘 필요가 있다.
SDK를 제약하는 애매한 족쇄가 있긴 해도 SDK가 양질의 게임과 애플리케이션을 작성하기에 충분한 플랫폼이라는 사실은 명백하다. SDK는 아이폰의 복잡한 저수준 프레임워크를 감춰주고 사용하기 쉬운 객체를 제공한다. 그러므로 사용자 인터페이스, 위치관련 검색, 환경설정과 같은 작업을 코딩하는 데 드는 시간이 다른 개발환경에 비해 줄어들었다. 따라서 개발자들은 프로젝트의 좀더 중요한 부분에 집중할 수 있다. 몇 줄의 코드만으로 3D 애니메이션, 오디오 사운드 등이 들어간 다양한 사용자 인터페이스를 만들어 낼 수 있다. 이 책은 아이폰 개발의 패러다임과 완벽한 아이폰 소프트웨어 디자인에 중요한 프레임워크를 소개한다.
[ 이 책에서 다루는 내용 ]
• 인터페이스 빌더와 UI 킷 프레임워크를 이용한 UI 디자인
• 윈도우, 내비게이션 바 등 애플리케이션 컨트롤 생성
• 레이어 생성/관리와 코어그래픽스와 쿼츠코어를 사용한 전환
• AVFoundation을 이용한 사운드 파일 재생과 믹싱
• 오디오 툴박스를 이용한 디지털 사운드 스트림 녹음과 재생
• CFNetwork 프레임워크를 사용한 네트워크 프로그래밍
• 아이폰 GPS와 대응하는 코어 로케이션 프레임워크
• 무비 플레이어 기능
[ 이 책의 대상 독자 ]
이 책은 아이폰용 애플리케이션을 개발하려는 초보자나 경험있는 개발자들을 대상으로 했다. 여러분이 이 책을 유용하게 읽으려면 개발에 대한 사전 지식이 필요하다. 아이폰 개발환경에서는 오브젝티브C를 사용한다. 오브젝티브C는 책 서두 부분에서 설명한다. 개발환경에서 C/C++를 사용한 경험이 있다면 오브젝티브C를 매우 빨리 익힐 수 있을 것이다. 이 책에서 오브젝티브C에 대한 모든 것을 다루지는 않지만 책에 실린 기본적인 내용과 완성된 많은 예제 코드로 오브젝티브C에 입문하는 데 도움이 될 것이다.
책을 읽으면서 이 책이 다루지 않는 디바이스의 다른 측면에 대해서도 생각해보자. 많은 저수준 객체와 프레임워크는 SDK에서는 제한되지만 아이폰 해킹 커뮤니티에서 널리 쓰여왔다. 이 책에서는 SDK로 가능한 것과 불가능한 것에 대해 혼란스럽지 않도록, 몇 가지 명시된 예제를 제외하고는 비공식 API는 사용하지 않았다. SDK를 사용한 내부적으로 사용할 애플리케이션을 개발하거나 저수준에서 아이폰이 어떻게 작동하는지 더 알고 싶다면 『iPhone Open Application Development 2판』을 보충 교재로 살펴보기를 권한다. 두 책을 함께 보면 SDK로 가능한 것과 불가능한 것을 이해할 수 있을 뿐 아니라 해킹 커뮤니티에서 작성된 애플리케이션과 기능성을 비교해 볼 수도 있다.
[ 이 책의 구성 ]
1장. 아이폰 SDK 시작하기
아이폰 SDK를 다운로드하고 실행하는 방법을 설명한다. 샘플 애플리케이션을 설치하고 빌드하는 방법을 설명한다.
2장. 인터페이스 빌더: 엑스코드용 GUI 도구
아이폰의 사용자 인터페이스를 설계하는 데 사용하는 위지윅 도구인 인터페이스 빌더를 소개한다.
3장. UI 킷 소개
UI 킷 프레임워크를 소개하고 기본적인 UI 요소들을 어떻게 설계하는지 설명한다.
4장. 멀티터치 이벤트와 지오메트릭
이벤트 처리와 기본적인 지오메트릭을 설명한다.
5장. 쿼츠코어를 사용한 레이어 프로그래밍
레이어의 생성과 관리 방법, 코어 그래픽스와 쿼츠코어를 사용한 변환 방법을 보여준다.
6장. 오디오 툴박스와 AVFoundation
AVFoundation을 사용해 사운드파일을 믹싱하고 재생하는 방법을 알려주며 오디오 툴박스 프레임워크를 이용해 디지털 사운드 스트림을 녹음하고 재생하는 방법도 살펴본다.
7장. CFNetwork로 네트워크 프로그래밍하기
CFNetwork 프레임워크를 이용한 네트워크 프로그래밍을 설명한다.
8장. 위치확인: 코어 로케이션
코어 로케이션 프레임워크에 대해 소개하고 아이폰 GPS와 어떻게 상호작용하는지 설명한다.
9장. 주소록 프레임워크
주소록 API를 설명하고 연락처를 검색하고 화면에 보여주는 방법을 설명한다.
10장. 고급 UI 킷 설계
좀더 확장된 UI 킷 클래스를 소개한다.
11장. 애플리케이션 설정
프로퍼티 목록과 애플리케이션 프레퍼런스을 읽고 쓰는 방법을 설명한다.
12장. 커버플로우
커버플로우 스타일로 앨범을 넘기는 방식을 설계하는 방법을 설명한다.
13장. 페이지 넘기기
페이지를 넘겨 전환하는 효과와 책의 페이지처럼 여러 뷰 사이를 넘기는 방식을 설명한다.
14장. 미디어 플레이어 프레임워크
애플리케이션에 영상 재생기를 추가하는 방법을 설명한다.
[ 소개 ]
매우 종합적인 내용을 다루는 책으로서 아이폰 개발자들에게 요긴한 수많은 예제 프로젝트를 잘 설명해놓았다. 저자 조나단의 글은 권위 있고 명쾌하며 풍부한 경험이 가득 담겨있다.
- 존 홀 / GoDaddy.com 소프트웨어 엔지니어
2008년 3월 애플이 SDK를 공식 발표했을 때 엔터프라이즈 개발자들은 환호했다. 오랫동안 기다려온 개발자들에게 아이폰의 상업용 애플리케이션을 설계할 수 있는 개발환경과 개인사용자에게 배포할 수 있는 공급 채널이 마침내 열렸기 때문이다. 이 책은 앱스토어에 특화된 애플리케이션 개발에 사용되는 공식 애플 SDK와 API에 대해 설명한다.
애플 SDK는 모바일 소프트웨어 개발에 있어 대단한 발전을 이뤘으며 벼락부자를 만드는 환상적인 관문을 제공했다. SDK 개발자는 자신이 만든 제품을 즉시 구매할 수 있는 수백만의 사용자와 직접 연결된 채널을 갖게 된다. 오랫동안 기다려온 애플의 NDA 철회는 환상적인 디바이스인 아이폰과 사업모델에 대한 열광을 극대화시키는 결과를 낳았다. 아이폰 SDK가 가져다 주는 이익과 혁신의 기회에 대해서는 의심의 여지가 없다.
그러나 이 열광은 바로 현실적인 한계에 부딪히게 된다. 아이폰 개발자들은 여전히 일면 폐쇄적인 디바이스 플랫폼상에서 개발해야 한다. 개발자가 만든 애플리케이션은 접근방식을 제약하는 제한된 샌드박스에서 실행되고 애플은 디바이스의 좀더 강력한 리소스에 접근하기 위해 비공개 API를 사용하는 개발자에게 제약을 둔다. 개발자는 개발가능한 것에 대한 잘못된 추정으로 헛된 코딩 시간을 보내지 않도록 개발환경의 한계에 대해 알아둘 필요가 있다.
SDK를 제약하는 애매한 족쇄가 있긴 해도 SDK가 양질의 게임과 애플리케이션을 작성하기에 충분한 플랫폼이라는 사실은 명백하다. SDK는 아이폰의 복잡한 저수준 프레임워크를 감춰주고 사용하기 쉬운 객체를 제공한다. 그러므로 사용자 인터페이스, 위치관련 검색, 환경설정과 같은 작업을 코딩하는 데 드는 시간이 다른 개발환경에 비해 줄어들었다. 따라서 개발자들은 프로젝트의 좀더 중요한 부분에 집중할 수 있다. 몇 줄의 코드만으로 3D 애니메이션, 오디오 사운드 등이 들어간 다양한 사용자 인터페이스를 만들어 낼 수 있다. 이 책은 아이폰 개발의 패러다임과 완벽한 아이폰 소프트웨어 디자인에 중요한 프레임워크를 소개한다.
[ 이 책에서 다루는 내용 ]
• 인터페이스 빌더와 UI 킷 프레임워크를 이용한 UI 디자인
• 윈도우, 내비게이션 바 등 애플리케이션 컨트롤 생성
• 레이어 생성/관리와 코어그래픽스와 쿼츠코어를 사용한 전환
• AVFoundation을 이용한 사운드 파일 재생과 믹싱
• 오디오 툴박스를 이용한 디지털 사운드 스트림 녹음과 재생
• CFNetwork 프레임워크를 사용한 네트워크 프로그래밍
• 아이폰 GPS와 대응하는 코어 로케이션 프레임워크
• 무비 플레이어 기능
[ 이 책의 대상 독자 ]
이 책은 아이폰용 애플리케이션을 개발하려는 초보자나 경험있는 개발자들을 대상으로 했다. 여러분이 이 책을 유용하게 읽으려면 개발에 대한 사전 지식이 필요하다. 아이폰 개발환경에서는 오브젝티브C를 사용한다. 오브젝티브C는 책 서두 부분에서 설명한다. 개발환경에서 C/C++를 사용한 경험이 있다면 오브젝티브C를 매우 빨리 익힐 수 있을 것이다. 이 책에서 오브젝티브C에 대한 모든 것을 다루지는 않지만 책에 실린 기본적인 내용과 완성된 많은 예제 코드로 오브젝티브C에 입문하는 데 도움이 될 것이다.
책을 읽으면서 이 책이 다루지 않는 디바이스의 다른 측면에 대해서도 생각해보자. 많은 저수준 객체와 프레임워크는 SDK에서는 제한되지만 아이폰 해킹 커뮤니티에서 널리 쓰여왔다. 이 책에서는 SDK로 가능한 것과 불가능한 것에 대해 혼란스럽지 않도록, 몇 가지 명시된 예제를 제외하고는 비공식 API는 사용하지 않았다. SDK를 사용한 내부적으로 사용할 애플리케이션을 개발하거나 저수준에서 아이폰이 어떻게 작동하는지 더 알고 싶다면 『iPhone Open Application Development 2판』을 보충 교재로 살펴보기를 권한다. 두 책을 함께 보면 SDK로 가능한 것과 불가능한 것을 이해할 수 있을 뿐 아니라 해킹 커뮤니티에서 작성된 애플리케이션과 기능성을 비교해 볼 수도 있다.
[ 이 책의 구성 ]
1장. 아이폰 SDK 시작하기
아이폰 SDK를 다운로드하고 실행하는 방법을 설명한다. 샘플 애플리케이션을 설치하고 빌드하는 방법을 설명한다.
2장. 인터페이스 빌더: 엑스코드용 GUI 도구
아이폰의 사용자 인터페이스를 설계하는 데 사용하는 위지윅 도구인 인터페이스 빌더를 소개한다.
3장. UI 킷 소개
UI 킷 프레임워크를 소개하고 기본적인 UI 요소들을 어떻게 설계하는지 설명한다.
4장. 멀티터치 이벤트와 지오메트릭
이벤트 처리와 기본적인 지오메트릭을 설명한다.
5장. 쿼츠코어를 사용한 레이어 프로그래밍
레이어의 생성과 관리 방법, 코어 그래픽스와 쿼츠코어를 사용한 변환 방법을 보여준다.
6장. 오디오 툴박스와 AVFoundation
AVFoundation을 사용해 사운드파일을 믹싱하고 재생하는 방법을 알려주며 오디오 툴박스 프레임워크를 이용해 디지털 사운드 스트림을 녹음하고 재생하는 방법도 살펴본다.
7장. CFNetwork로 네트워크 프로그래밍하기
CFNetwork 프레임워크를 이용한 네트워크 프로그래밍을 설명한다.
8장. 위치확인: 코어 로케이션
코어 로케이션 프레임워크에 대해 소개하고 아이폰 GPS와 어떻게 상호작용하는지 설명한다.
9장. 주소록 프레임워크
주소록 API를 설명하고 연락처를 검색하고 화면에 보여주는 방법을 설명한다.
10장. 고급 UI 킷 설계
좀더 확장된 UI 킷 클래스를 소개한다.
11장. 애플리케이션 설정
프로퍼티 목록과 애플리케이션 프레퍼런스을 읽고 쓰는 방법을 설명한다.
12장. 커버플로우
커버플로우 스타일로 앨범을 넘기는 방식을 설계하는 방법을 설명한다.
13장. 페이지 넘기기
페이지를 넘겨 전환하는 효과와 책의 페이지처럼 여러 뷰 사이를 넘기는 방식을 설명한다.
14장. 미디어 플레이어 프레임워크
애플리케이션에 영상 재생기를 추가하는 방법을 설명한다.
목차
목차
- 1장 아이폰 SDK 시작하기
- 애플리케이션의 구조
- 엑스코드의 내부
- 아이폰 SDK 설치
- 준비사항
- 아이폰 시뮬레이터
- 아이폰 SDK 다운로드와 설치
- 아이폰 프로비저닝
- 애플리케이션 빌드와 설치
- 모델-뷰-컨트롤러
- 애플리케이션 템플릿
- 엑스코드 프로젝트 레이아웃
- 프로토타입
- 프레임워크 추가
- SDK 설정
- 애플리케이션 빌드
- 애플리케이션 설치
- 오브젝티브C
- 메시징
- 클래스와 메소드 선언
- 구현
- 프로퍼티
- 프로토콜
- 카테고리
- 포징
- 추가 정보
- 2장 인터페이스 빌더: 엑스코드용 GUI 도구
- 윈도우, 뷰, 뷰 컨트롤러
- 기존 템플릿
- 신규 템플릿
- 사용자 인터페이스 요소
- 컨트롤러
- 데이터 뷰
- 입력과 값
- 윈도우, 뷰, 바
- 인스펙터
- UI 설계
- 윈도우
- 뷰 컨트롤러
- 뷰
- 뷰 연결
- 코드에 연결 추가
- 프로젝트에서 인터페이스 빌더 제거
- 3장 UI 킷 소개
- 기본 사용자 인터페이스 요소
- 윈도우와 뷰
- 윈도우와 뷰 생성
- 뷰 보여주기
- HelloView 예제
- 요약
- UIView에서 파생하기
- HelloWorld 예제
- 요약
- 뷰 컨트롤러
- 뷰 컨트롤러 생성
- 인터페이스 빌더에서 가져오기
- 방향 전환
- 뷰 컨트롤러 삭제
- ControllerDemo 예제
- 요약
- 생각해볼 문제
- 텍스트 뷰
- 텍스트 뷰 생성
- 컨텐트 할당
- HTML 보여주기
- SourceReader: 웹페이지 소스코드 리더
- 요약
- 생각해볼 문제
- 내비게이션 바와 컨트롤러
- 내비게이션 컨트롤러 생성
- 내비게이션 컨트롤러 프로퍼티
- 세그먼티드 컨트롤 추가
- 툴바 추가
- PageDemo: 내비게이션 연습
- 요약
- 생각해볼 문제
- 전환 애니메이션
- 전환 생성
- 전환 추가
- FlipDemo: 페이지 넘기기
- 요약
- 생각해볼 문제
- 액션 시트와 경고
- 경고
- 액션 시트
- 액션 시트 해제
- EndWorld 애플리케이션: 확인 기능
- 요약
- 생각해볼 문제
- 테이블 뷰와 테이블 뷰 컨트롤러
- 테이블 생성
- 테이블 셀
- 다중선택 구현
- 편집과 밀어 지우기
- 테이블 리로드
- TableDemo: 간단한 파일 브라우저
- 요약
- 생각해볼 문제
- 상태바 조작
- 상태바 숨기기
- 상태바 스타일
- 상태바 방향
- 애플리케이션 뱃지
- 애플리케이션 뱃지 보여주기
- 애플리케이션 뱃지 삭제
- 생각해볼 문제
- 애플리케이션 서비스
- 중지와 재개
- 프로그램 종료
- 사파리 실행
- 통화 초기화
- 4장 멀티터치 이벤트와 지오메트릭
- 기하학적 구조체 소개
- CGPoint
- CGSize
- CGRect
- 멀티터치 이벤트 처리
- UITouch 알림
- UIEvent
- 이벤트 처리
- 예제: 탭 카운터
- 예제: 탭과 드래그
- 멀티터치 처리
- PinchMe: 핀치 추적
- TouchDemo: 멀티터치 아이폰 추적
- 요약
- 생각해볼 문제
- 5장 쿼츠코어를 이용한 레이어 프로그래밍
- 레이어에 대한 이해
- 레이어 계층 구조
- 크기와 오프셋
- 배열과 디스플레이
- 렌더링
- 변환
- 레이어 애니메이션
- 레이어 변환
- BounceDemo: 재미있는 레이어
- 요약
- 생각해볼 문제
- 6장 오디오 툴박스와 AVFoundation
- AVFoundation 프레임워크
- 오디오 플레이어
- 플레이어 프로퍼티
- 사운드 재생
- 델리게이트 메소드
- 미터링
- AVMeter: VU 미터 생성
- 요약
- 생각해볼 문제
- 오디오 서비스
- 요약
- 오디오 큐
- 오디오 큐 구조체
- 오디오 출력 제공
- 사운드 버퍼
- 콜백 함수
- 볼륨 조절
- 예제: PCM 플레이어
- 요약
- 생각해볼 문제
- 사운드 녹음
- 오디오 큐 구조체
- 오디오 입력 제공
- 사운드 버퍼
- 콜백 함수
- 원시 데이터 접근
- 파일 쓰기
- 예제: 사운드 녹음기
- 요약
- 생각해볼 문제
- 진동
- 7장 CFNetwork를 사용한 네트워크 프로그래밍
- 기본 소켓 프로그래밍
- 소켓 타입
- CFSocket
- CFSocketContext
- 소켓 스트림
- CFSocket 예제: 대화 서버
- 생각해볼 문제
- CFHTTP와 CFFTP
- CFHTTP
- CFFTP
- 생각해볼 문제
- 8장 위치확인: 코어 로케이션
- 코어 로케이션 매니저
- 검색 파라미터
- 쿼리 생성
- 업데이트 정보 수신
- 쿼리 완성
- 오류 처리
- 예제: WhereYouAt
- 요약
- 생각해볼 문제
- 9장 주소록 프레임워크
- 주소록 접근
- 상위레벨 주소록 함수
- 주소록 검색
- 레코드 생성
- 레코드로 작업하기
- 다중값 프로퍼티
- 딕셔너리로 작업
- 이미지 데이터
- 생각해볼 문제
- 주소록 UI
- Person 뷰
- 피플 피커
- 생각해볼 문제
- 10장 고급 UI 킷 설계
- 공통 컨트롤
- UIControl 기본 클래스
- 세그먼티드 컨트롤
- 스위치
- 슬라이더
- 텍스트 필드 컨트롤
- 버튼
- 페이지 컨트롤
- 생각해볼 문제
- 프레퍼런스 테이블
- 프레퍼런스 테이블 생성
- 프레퍼런스 테이블 보여주기
- ShootStuffUp: 프레퍼런스 테이블 예제
- 요약
- 생각해볼 문제
- 섹션 목록
- 섹션 목록 생성
- 인덱스 바 추가
- 섹션 목록 보여주기
- TableDemo: 더 나은 파일 브라우저
- 요약
- 생각해볼 문제
- 진행과 액티비티 표시자
- UIActivityIndicatorView: 회전 표시자
- UIProgressView: 회전 표시자를 바꿔보자
- 네트워크 액티비티 표시자
- 생각해볼 문제
- 이미지
- 이미지 객체
- ImageFun: 재미있는 이미지와 패턴
- UIImageView: 뷰 속의 이미지
- 이미지 피커
- 키보드 프로퍼티
- 키보드 스타일
- 키보드 형태
- 반환키
- 자동대문자
- 자동수정
- 보안 텍스트 엔트피
- 피커
- 피커 생성
- 피커 보여주기
- 피커 읽기
- NosePicker: 코 모양의 휠 방식
- 요약
- 생각해볼 문제
- 날짜/시간 피커
- 날짜/시간 피커 생성
- 날짜 피커 보여주기
- 날짜 읽기
- DatePicker: 독립기념일 피커
- 요약
- 생각해볼 문제
- 탭바
- 탭바 컨트롤러
- 탭바 컨트롤러 생성
- 수정 가능한 버튼
- 내비게이션
- 델리게이트 액션
- TabDemo: 그밖의 텍스트북
- 요약
- 생각해볼 문제
- 센서와 디바이스 정보
- 모드 방향 읽기
- 디바이스 정보 읽기
- 가속도계 읽기
- 접근 센서
- 생각해볼 문제
- 스크롤 뷰
- 스크롤 뷰 생성
- 프로퍼티
- 델리게이트 메소드
- BigImage: 기상도 스크롤
- 요약
- 생각해볼 문제
- 웹뷰
- 웹뷰 생성
- 웹뷰 보여주기
- 컨텐트 로딩
- 내비게이션
- 델리게이트 메소드
- WebDemo: 구글검색 유틸리티
- 요약
- 생각해볼 문제
- 11장 애플리케이션 설정
- 딕셔너리와 프로퍼티 목록
- 딕셔너리 생성
- 키 관리
- 프로퍼티 목록 작성
- 프로퍼티 목록 읽기
- 생각해볼 문제
- 프레퍼런스 번들
- 키 추가
- 프레퍼런스 번들 값 읽기
- 생각해볼 문제
- 12장 커버플로우
- CovertFlow: SDK 커버플로우 개발
- 요약
- 생각해볼 문제
- 13장 페이지 넘김 애니메이션
- PageControl 예제
- 요약
- 생각해볼 문제
- PageScrollView
- 요약
- 14장 미디어 플레이어 프레임워크
- 무비 플레이어 컨트롤러
- 프로퍼티
- 영상 재생 및 멈추기
- 노티피케이션