2. • App Extensions란?
• Extension Point의 종류
• App Extensions의 기초 동작
1. App Extensions의 라이프 사이클
2. App Extensions의 데이터 전달방법
- App Groups
- Embedded Framework
- NSUserDefaults의 경우
- CoreData의 경우
• 주의사항
3. iOS8 & OS X - Yosemite부터 새로 추가된 개념으로써
App Extensions란?
4. 공유, 통지센터, 키보드 등 iOS 시스템의 특정 영역과
연결지어서 그 영역의 기능을 확장시켜줍니다
App Extensions란?
5. 그 각각의 영역을 Extension Point 라고 합니다
App Extensions란?
25. Extension Point의 종류
Document provider(iOS Only)
• Containing app 안에 있는 파일
을 Host app이 조작할 수 있도록
하는 Extension
• Import / Export / Open / Move
의 조작을 할 수 있음
• 각 조작은 직접 구현할 필요가 있음
47. App Extensions의 기초 동작
EmbeddedFramework
General → Deployment Info → App Extensions의
Allow app extension API only 항목에 체크
48. App Extensions의 기초 동작
EmbeddedFramework
프로젝트의Target → General → Embedded Binaries와
Linked Frameworks and Libraries에 생성한 EmbeddedFramework가
존재하는지 확인 후 존재하지 않으면 추가시켜줍니다
49. App Extensions의 기초 동작
EmbeddedFramework
App Extensions의 Target에도 같은 확인을 합니다
(Linked Frameworks and Libraries만)
50. App Extensions의 기초 동작
EmbeddedFramework
공용할 클래스의 .h파일을 EmbeddedFramework Target의 Build
Phases→ Headers→Project에 추가합니다
51. App Extensions의 기초 동작
EmbeddedFramework
공용할 클래스의 .m파일은 EmbeddedFramework Target의 Build
Phases→ Compile Sources에 추가합니다
52. App Extensions의 기초 동작
EmbeddedFramework
공용할 클래스 중 EmbeddedFramework외부에서 사용할 클래스는
해당 .h파일을 Headers→Project에서 Headers→Public로 이동시킨 뒤
53. App Extensions의 기초 동작
EmbeddedFramework
EmbeddedFramework를 생성할때 함께 만들어진 .h파일
(이 경우에서는 EmbeddedDB.h)의 밑에 아래와 같은 방식으로 써줍니다
54. App Extensions의 기초 동작
EmbeddedFramework
실제 사용할 클래스에서는 @import 방식으로 선언해주면 OK