아이폰기본사용2010.09.08 19:00

 
서론은 그만하고  아이팟에 내가 만든 어플 올리는 방법을 소개하겠다.

환경은 아래와 같다.
iPod Touch 2세대 (2.2.1) - 해킹된 버전(jailbreak)
OSX 10.5.4  (실제로 쓴건 iDeneb 10.5.4... 맥 살 돈이 없고..난 쓰고 싶을 뿐이고..)
Xcode Version 3.1.2

잘 모르는 사람을 대상으로 쓴 글이기에 주로 스크린샷으로 설명을 대체하겠다.

1. 프로젝트를 하나 만들어서 NIB파일을 더블클릭해 아무 컨트롤 또는 HelloWorld를 입력
  (시뮬레이터에서 컴파일하고 테스트는 가능하다 Device로 선탁해서 컴파일 하면
   Codesign어쩌고저쩌고 에러가 뜬다.)

2. 프로젝트 셋팅으로 들어간다.
  

3. 프로젝트 셋팅 화면에서 위 4개의 탭중 Build탭을 선탁 한 후 
  아래 "Add User-Defined Setting"을 클릭하여 화면과 같이 2개 값을 입력한다.
  (보기좋게 Show항목을 User-Defined Settings으로 해놓으면 좋다.)

4. 인증서를 생성해야 한다. 
  (참고 : Obtaining a Signing Identity )
  아래 위치에 있는 "키체인 접근"이란 프로그램을 실행시킨다.
  (영문 : Application > Utilities > Keychain Access )
5. 이제 인증서를 생성하자. 그냥 화면대로 따라하면 된다.
  메뉴 중 "키체인 접근 > 인증 지원 > 인증서 생성" 을 클릭한다.
  (영문 : Keychain Access menu > Certificate Assistant > Create a Certificate )

6. 인증서 생성을 클릭하면 아래와 같은 화면이 보인다.
  그곳에서 이름란에 반드시 "iPhone Developer" 라고 입력한다. (철자 틀림 주의)
  유형은 "자체 서명 루트", 기본값 무시 체크 를 한다. 그리고 계속 버튼을 클릭
  (영문 : 자체 서명 루트 == Self Signed Root)
7. 인증 정보란에는 
  다른 입력란은 Default로 입력되는 내용을 그대로 놔두고 
  인증 유형을 "코드 서명" 으로 변경하고 "계속"버튼을 누른다.
  (영문 : 코드서명 == Code Signing)
 8. 개인정보 란에는 그냥 그냥 적는다. (이름란에는 iPhone Developer... 이렇게 안적으면 어떻게 되는지 모름)
   그리고 인증서 생성 될때까지 완료 누른다.
아래와 같이 인증서 생성 완료~!!!


9. 프로젝트 디렉토리 안에 있는 Info.plist파일을 체크(수정)한다.
 만약 Info.plist파일안에
  CFBundleIdentifier 와 CFBundleName항목이 없다면 아래와 같이 추가한다. 또는 임의로 넣어주어도 된다.
 (아래 화면에서 잘 찾아서... 참고로 key와 string이 한쌍이다.)

10. 위 까지 한 후 빌드(Target : Device 2.2.1)를 하게 되면 아래와 같은 창이 뜨고 "허용"을 누르면 
   뭔가 에러가 나서 프로그램이 실행되지 않는다.
11. 그래서 방금 전 수정했던  Info.plist파일에 
  SignerIdentity란 키로 "Apple iPhone OS Application Signing"이란 값을 입력해 준다.

12. 이제 Build & Run(Go)를 누르면 실제 디바이스에서 동작하는 것을 확인 할 수 있을 것이다.
  (타겟을 iPhone 2.2.1로 설정)



우선 1차 목표는 끝냈고 문제는 어둠의 루트에서 흐르는 해킹된 어플파일 처럼 ipa파일로 만드는 방법이다.
(그래야 보관도 편하고 그러니깐... 일일이 ipod꼽고 Xcode켜고 빌드 해서 넣을 순 없잔아~)
ipa파일을 ipod에 넣는 방법은 인터넷에 많이 있으니깐 알아서... (~^_____^)~

1. 타켓을 만들어야 한다.
  과녁표시 아이콘이 그것인데 마우스 오른쪽 클릭 한 후 "Add > New Target" 을 클릭

2. 옆 메뉴 중에 Other 에 있는 Aggregate를 선택하여 Next를 클릭하자

3. Target Name은 적당히 지어주고 비록 프로젝트가 1개밖에 없지만
  현재 선택된 프로젝트가 내가 ipa로 만들고 싶은 프로젝트인지 확인한다. 그런 후 Finish클릭~

4.  Finish를 클릭하면 아래와 같은 팝업창이 뜨는 것을 확인 할 수 있다.
  당황하지 말고 상단 4개의 탭중 가장 왼쪽에 있는 Gerneral탭을 클릭한다.
5. Gerneral을 클릭하면 아래와 같은 화면이 뜨는데 Direct Dependencie...란 이름을 가진 리스트박스 바로 아래있는
  + 버튼을 눌러 프로젝트를 선택 하고 Add Target버튼을 클릭해 줍니다.
  (화면에 보이는 IPA라고 과녁표시는 무시해버리세요~ 테스트로 먼저 해본거라...)
 

  위 작업을 모두 하면 아래와 같은 화면을 볼 수 있습니다.


6. 스크립트 작성을 위해 방금 전에 만든 타겟에 마우스 오른쪽 버튼 클릭 한 후
  "Add > New Build Phase > New Run Script Build Phase" 를 클릭합니다.


7. 스크립트를 아래와 같이 작성 해 줍니다.
  참고로 띄어쓰기 조심~!!! ( if 와 [ 사이 공백 존재합니다..... 쉘스크립트 해본지 오래되서 공백안줘서 헤멘 1인)

   만약 ipa가 잘 만들어지지 않는다면 시험삼아 위에서 3번째줄까지 (if ~ fi ) 를 삭제하고 다시 해 보세요.

------------------------------------------------------------------------------------------------------
if [ $BUILD_STYLE != "AdHoc_Distribution" ]; then
exit
fi

# compress application.

/bin/mkdir $CONFIGURATION_BUILD_DIR/Payload
/bin/cp -R $CONFIGURATION_BUILD_DIR/프로젝트이름.app $CONFIGURATION_BUILD_DIR/Payload

cd $CONFIGURATION_BUILD_DIR

# zip up the Test Project
/usr/bin/zip -r 프로젝트이름.ipa Payload iTunesArtwork
------------------------------------------------------------------------------------------------------

8. ipa로 만들기 위해 아래와 같이 설정을 해 줍니다.

9. 빌드 하기 전 "Build > Clean"을 해 주는건 제 습관입니다.... 그냥 습관이에요~ ㅋㅋ
아무튼 빌드하게 되면 아래와 같이 ipa파일이 생성되는 것을 볼 수 있습니다.


글로 하자면 몇 줄 (약 20~30줄)안에 모두 설명가능한거지만
혹시 헤매고 있을 처음하시는 분을 위해 스크린샷으로 도배를 하였습니다.
(다들 알고 있는 것을 해 버린거 아닌가 모르겠네요...)

아무튼 경험상 처음하면 가장 고마운게 스크린샷으로 설명해 주시는 분이라 저도 스크린샷으로.. ^^;
이상 끝

돈없는 자취생은 하루하루 삽질해가며 이러고 있답니다. 쩝..... 

참고 URL
- 애플 개발자 사이트 : http://developer.apple.com
- 아이팟터치팬 : http://www.ipodtouchfans.com  (http://www.ipodtouchfans.com/forums/showthread.php?t=167311)
- http://www.hackint0sh.org/forum/f9/70075.htm
- http://www.iphonedevx.com/?p=59
- security 문제 해결 : http://isagoksu.com/2009/development/iphone/how-to-get-rid-of-security-policy-error/
 


출처 : http://blog.naver.com/PostView.nhn?blogId=baek2187&logNo=150067093058
Posted by 오늘마감

티스토리 툴바