Tag Archives: Provistioning

[iPhone] Adhoc Distribution을 사용하여 배포하기

이번에는 Adhoc Distribution에 대해 조금 성의 없는 기록성 포스팅을 하나 해볼려고 합니다. Developer Center가 익숙하지 않으신분은 [이글]을 먼저 보시면 도움이 될꺼 같네요.

개발중인 어플리케이션은 다른 주변 사람들에게 테스트를 요청하고 싶다면? 가장 편한 방법으로는 개발 디바이스로 등록해 버리고 (최대 100대까지 등록가능함) 어플리케이션을 넣어주는 방법이 있겠죠.

하지만 먼곳에 있는 사람이라면 이야기가 좀 달라집니다. 적어도 실행 바이너리를 원격으로 주어야 할텐데 쉽지 않죠. 그럴때는 Adhoc Distribution을 이용하여 파일만 메일로 보내주면 아이튠즈를 통해서 추가/업데이트가 가능합니다.

사용자 삽입 이미지

프로그램 포탈에 들어가서 Certificates – Distribution에 들어가서 개발용으로 등록하기 위해 생성했던 키체인 파일을 등록하여 생성된 인증서를 다운받아 설치합니다. 참고로 Distribution 관련 메뉴는 일반 개발자에게는 보이지 않고 꼭 Agent여야만 나타납니다. (회사로 등록하였을 경우 기준)

사용자 삽입 이미지
Provisioning 파일을 만들 시간입니다. Provisioning – Distribution에 들어가서 Adhoc을 선택하고 App Id와 사용할 디바이스를 선택하여 생성후에 다운을 받습니다. 이렇게 생성한 Provisioning 파일은 빌드시에도 사용하고 배포시에도 사용하게 됩니다.

사용자 삽입 이미지
자, 이제 XCode로 돌아옵시다. 뒤에 은근히 파일들이 보여서 신경 쓰이지만;; 그냥 무시하고.. 프로젝트 정보탭을 열어보면 Configuration이라고 있습니다. 여기서 Release를 선택하여 복사(Duplicate) 합니다. 버튼은 왼쪽 하단에 있습니다.

사용자 삽입 이미지
이번엔 Build 탭으로 돌아와서 아까 복사한 Configuration을 선택합니다. 저는 Adhoc Distribution이라고 해놨습니다. Any iPhone OS Device에는 아까 생성한 Provisioning을 선택합니다. (순서가 이상한데, 생성한 Provisioning 파일을 Organizer에 등록해 두셔야 합니다. 그냥 더블클릭해도 자동 등록됩니다. 바로 등록 안된다면 XCode를 재시작 해보시길.) 여기서 특이한 점은 (3)의 dist.plist인데요. 이부분이 없어도 빌드가 되어야 정상이지만 저같은 경우에는 저 파일을 있어야 빌드가 에러없이 잘 되더군요. 이거 없이도 잘 되시는 분들은 무시하고 가셔도 될 것 같습니다.

사용자 삽입 이미지
새로 파일을 생성(File – New File…)합니다. Code Signing 탭의 Entitlements를 선택하여. 이름은 dist.plist로 합니다.

사용자 삽입 이미지get-task-allow키를 추가하고 타입은 Boolean으로 체크를 제거하여 줍니다. 이후에는 문제없이 컴파일이 이루어 질 것입니다.

사용자 삽입 이미지빌드가 끝났다면 Products안에 생성된 바이너리를 오른쪽 클릭하고 Reveal in Finder를 선택하면 바로 파일을 볼 수 있게 됩니다. 이 파일을 압축하여 아까 생성한 Provisioning 파일과 함께 상대방에게 배포하면 됩니다. 이 때에 중요한 점은 이파일을 윈도우에서 보면 실행파일명.app로(디렉토리) 보여집니다. 이파일들을 받은 사용자는 이 파일/디렉토리와 Provisioning 파일을 함께 아이튠즈 위로 끌어다 놓으면 응용프로그램란에 추가가 됩니다.

참고로 계속해서 수정해서 업데이트가 될 경우(버젼 업데이트 없이)에는 아이튠즈와 아이폰/아이팟에 있는 어플을 모두 삭제하고 다시 추가해 주셔야 정상적으로 추가됩니다. 안그러면 절대 업데이트가 안일어나더군요.