RSS

태그 보관물: ipa

아이폰 앱스을 웹을 통하여 배포하는 방법

1. 개요

iOS 4.0부터 웹에 올려져 있는 ipa(iPhone Archive) 파일을 모바일 사파리에서 접근하여 다운로드 및 설치가 가능해졌다. 본 문서는 Build and Archive한 배포본을 share하는 방법을 설명하기 위하여 제작되었다.

2. 프로세스

  • Build and Archive : 빌드해서 아카이브로 저장하기
  • Share: ipa에 signing해서 배포하기
  • Copy ipa and plist to web repository: 만든 ipa와 manifest파일을 웹에 올리기
  • Generate anchor tag: 링크 만들기

2-1. Build and Archive

Xcode에서 타겟을 Device로 놓고 in house 빌드를 위한 인증서를 연결한 다음 Build > Build and Archive를 선택한다. 이 메뉴가 활성화 되려면 Simulator가 아닌 Device로 세팅되어 있어야 한다.

빌드가 끝나도 아무런 변화가 없을 것이다. Window > Organizer 메뉴에 들어가 보면 다음과 같은 변화가 생긴 것을 확인 할 수 있다.

만들어진 빌드에 이름과 코멘트를 작성해서 훗날 다시 봤을 때 어떤 배포본이었는지 확인하기 쉽게 한다.

자 이제 Share… 버튼을 눌러서, 이 배포본을 공유해보자.

2-2. Share

Share… 버튼을 누르면 다음과 같은 팝업 윈도우가 뜬다. 여기서 Identity는 기존에 선택된 것을 그대로 두거나 상황에 맞게 선택한다.

우리는 전사에 웹을 통해 공유할 계획이므로 Distribute for Enterprise… 버튼을 누른다.

URL은 ipa파일이 최종적으로 위치하게 될 URL를 말한다. Title은 다운받을 때에 표시되는 이름을 정하기 위한 필드이다. 나머지는 선택사항이므로 빈공간으로 남겨둬도 무방하다.

OK를 누르고 생성될 파일명을 설정한 다음 Save한다.

그러면 *.ipa과 *.plist 두 개의 파일이 생성되는 것을 볼 수 있다.

다음은 이 파일을 웹의 저장 공간으로 복사하는 작업이 기다리고 있다.

2-3. Copy ipa and plist to web repository

파일을 웹이 접근가능한 곳으로 옮기는 방법은 수백만가지가 되겠지만 어떤 방법을 쓰던 상관없이 특정 폴더로 이동시키면 된다.

현재 CI서버는 Hudson을 사용하고 있으며, 빌드 결과에 대해서 userContent라는 폴더를 통해서 웹 접근을 허용해준다.  따라서, ci서버의 ~/.hudson/userContent/ 아래에 필요에 따라서 폴더를 추가하여 작업하면 되겠다.

예) ~/.hudson/userContent/BLAHBLAH/ 아래에 BLAHBLAH.ipa과BLAHBLAH.plist를 복사한다.

2-4. Generate Anchor tag

index.html 같은 링크를 담을 파일을 만들어서 아래와 같이 링크를 만든다.

<a href=”itms-services://?action=download-manifest&url=http://BLAHBLAH.COM:8080/userContent/BLAHBLAH/BLAHBLAH.plist”>BLAHBLAH</a>

3. 결론

이제 해당 URL를 공유하여 회사내에서 공유할 수 있게 되었다. CI서버에 빌드와 통합하면, 매번 빌드가 수행될 때마다 적절한 경로에서 최신의 배포본을 공유할 수 있다는 점에서 Best Practice가 될 수 있을 것이다.

Advertisements
 
 

태그: , ,