framework제작

1. Framework 만들기

 

1.   New Project -> Library -> Cocoa Touch StaticLibrary 생성

 

<그림1>

 

2.    Targets에있는 기본 Bundle 제거

 

<그림2>

 

 

3.   Targets -> Add -> New Target.. -> Cocoa-> Loadable Bundle생성

 

<그림3>

 

 

<그림4>

 

 


 

 

4.    TargetInfo창에서 Build탭 선택 후 아래 내용들 수정

(설정시 debugrelease모두 만들기 위해서는  configuration부분을 All Configurations로 바꿔주고 아래 항목들을 수정)

 

<그림5>

1)  Wrapper Extension 항목 -> framework

2)  Mach-O Type 항목 -> RelocatableObject File

3)  Dead Code Stripping -> 체크해제

4)  Link With Standard Libraried -> 체크해제

5)  Other Linker Flags -> 내용 전부 제거

6)  GCC_PREFIX_HEADER -> 내용 전부 제거

7)  Insight의 경우 Header SearchPaths  ->  /usr/include/libxml2 추가

 

 

5.   Target Info창에서 Properties탭에서 화면 아래 “open Ingo.plist as File”  버튼 클릭후

Bundle OS Type code 내용을 FMWK로 수정후 저장

 

 

<그림6>

6.   Targets안에 있는 Insight(Bundle) 우클릭-> Add -> New Build Phase –--

---> New Copy Headers Builds Phase 생성

 

<그림7>

 

 

7.   Insight.framework에 추가시킬 구현 파일들을  Groups & Files -> Classes 안으로 드래그 (copy items into… 체크해서 파일을 복사. 체크를 안하면 참조로 됨)

(구현 파일들이 이미 생성되있지 않을때는 직접 AddNew로 만들어서 구현하는것도 가능)

 

<그림 8-1>

 

<그림 8-2>

8.   위와 같은 방법으로 Groups & Files Other Sources부분에 이미지나 사운드등 필요한 Resource들을 추가

(Framework을 만들때는 다른 Framework을 추가할 필요 없음)

 

 

9.   파일을 추가시키고나면 

Targets -> Insight -> Copy Bundle Resources(Resource)

Targets -> Insight -> Compile Sources (.m과 같은 구현파일들)

Targets -> Insight -> Copy Headers (.h와 같은 헤더파일들)

위의 부분에 자동으로 사용자가 추가한 항목들이 추가됨.

 

<그림9>

 

 

10. Targets -> Insight-> Copy Headers 우클릭 -> Set Role -> Public 클릭

(이 설정을 하지 않으면 framework에서 헤더파일이 보이지 않)

<그림10>

 

 

11. DebugRelease를 선택후 빌드하면

현재 프로젝트 폴더안에 Build-> Debug-iphonesimulator -> Insight.framework 폴더 또는 Build-> Release-iphonesimulator -> Insight.framework 폴더 자체가 프레임 워크.

 

 

 

 

 

 

 

 

2. 프로젝트에서의 사용방법.

 

 

1.   생성한 framework를 작업중인 project폴더에 추가.

Ex) Framework 이라는 폴더를 생성후 생성한 Insight.framework폴더를 붙여넣기.

 

 

 

2.   Insight.framework폴더를 프로젝트의 Frameworks폴더로 드래그

 

<그림11>

 

<그림 11-1>

 

위와 같이 Frameworks폴더에 넣으면 Targets->NPMK->LinkBinary With Libraries에 자동으로 추가되고  TargetsInfo에서 Framework경로를 직접 잡아줌.

(여러개의 framework(debug, release,simulator, device) 추가시 Target Info-> Framework Search Paths 의 값을  "$(SRCROOT)"  수정)

<그림12>

by 재환이아빠 | 2011/06/23 09:44 | iPhone/iPot 개발 | 트랙백 | 덧글(0)

트랙백 주소 : http://jamesbbun.egloos.com/tb/4992128
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]

:         :

:

비공개 덧글

◀ 이전 페이지          다음 페이지 ▶