[RN]ios 테스트 배포 4가지 방법

코드깎는 노인·2020년 12월 2일
1
post-custom-banner

OS 앱을 만들다 보면 베타 테스트도 더 전에 시연을 위해 다른 사람들에게도 앱을 배포해야 할 때가 있다

이때 아래와 같이 4가지 방법 정도가 있을 것 같다

(앱스토어에 베타로 올리는것은 제외했다.)

테스트 기기를 맥과 USB 연결 및 빌드
애드혹 OTA(Over The Air) 배포 ( UDID 수집 후 배포 )
TestFlight 를 통한 배포
Enterprise 계정을 통한 in-house 배포

각각 장단점을 살펴보면 아래와 같다.
테스트 기기를 맥과 USB 연결 및 빌드
장점
별다른 설정을 할 필요가 없다. 기기 받아서 개발기기 활성화 시키고 XCode 에서 자동으로 관리하는 wild provisiong 으로 바로 앱이 기기속으로 들어간다
단점
기기가 많을 경우 굉장히 번거롭다. 앱을 조금 수정하고 배포할 때 기기 대수만큼 USB 연결을 맺어야 한다

애드혹 배포 ( UDID 수집 후 배포 )
장점
테스트 기기를 가진 소유자가 UDID 만 알려주면 OTA 배포가 가능하므로 깔끔하다
단점
테스트 기기를 가진 사람이 UDID 를 넘겨줘야 한다.

TestFlight 를 통한 배포
장점
테스트기기 소유자한테 UDID 같은걸 받지 않아도 된다.
배포 후 앱 테스트 관련 통계를 보기가 좋다
단점
테스트 기기 소유자 수 만큼의 애플계정을 만들어줘야 한다.
같이 일을 하는 팀이 고정적이라면 좋겠지만, 클라이언트가 프로젝트마다 바뀌어서는 이것 역시 그 때마다 번거롭다

Enterprise 계정을 통한 in-house 배포
장점
모든게 장점이다. 끝판왕이다.
단점
1년에 36만원정도(?) 하는 Enterprise 계정이 필요하다
사업자 관련 정보를 애플에 넘겨야 하는 등 처음에 좀 번거롭다

프리랜서로 개발 작업을 할 떄는 가장 간편한게 2번 이었다.

클라이언트에게 UDID 얻는 방법을 알려준다.

이후에 내가 작업해야 할 것들은 아래와 같다

  1. 개발자 계정에 기기 UDID 등록

애플 개발자 계정 내 iOS 기기 관리 페이지로 접근한다.

접근 후에 Device 를 추가한다

기기를 등록하고 나면 아래와 같이 내 기기에 대한 정보가 나타난다.

  1. 배포용 프로비저닝 프로파일 생성 ( 배포용 인증서는 이미 만들었다고 가정 - 없다면 Certificates -> Productions 에서 만들자)

이어서 Distribution용 프로비저닝 프로파일을 추가한다.

앱 아이디를 선택

Distribution 인증서를 선택한다.

테스트할 기기를 선택한다.

프로비저닝 이름을 작성한다.

만들어진 프로비저닝 프로파일 다운로드 및 실행

  1. XCode 설정 ( 프로비저닝 프로파일을 실행 후 XCode 는 완전 종료 후 재시작 해주자. 그래야 갱신이 된다.)

프로젝트를 열고 Code Sign 과 provisioning profile 을 설정한다.

  1. IPA 파일의 생성

프로젝트를 Archive 하자. (시뮬레이터로 기기가 설정되어있으면 Archive 메뉴가 활성화되지 않으니 iOS Device 또는 연결된 기기를 선택하자)

아카이브가 완료되면 Export 한다.

Save for Ad Hoc Deployment 를 선택

여기서 개발자 계정을 연결한다. 만약 없다면 Login 창이 나타날 것이다.
로그인 창에서 로그인을 마치고 나서 Command + ` 키를 눌러서 XCode 내의 형제창들간 포커스를 이동하면 다시 이 화면으로 돌아올 수 있다.

ipa 파일 이름을 지정하고 저장한다.

  1. Dropbox 를 통한 https 서버 사용 및 plist 파일, 앱 다운로드 웹페이지 생성

만든 ipa 를 드랍박스 내에 자신이 원하는 경로로 저장을 한다.

파일에 마우스 우클릭 후 'dropbox 링크 공유' 를 클릭한다.

dropbox 파일의 링크를 누구나 https 를 통해 접근할 수 있도록 만들수 있는 방법이 있는데 이를 이용해서 우리는 앱을 배포할 것이다.
애플에서 어느날 부터 갑자기 https 가 아니면 앱 배포를 할 수 없도록 막아버려서 인증된 https 서버가 필요해 졌는데 dropbox가 이를 지원해 준다.
아래의 Dropbox public 링크 만들기 를 참고해서 링크를 만든 뒤에 텍스트 편집기에 저장해 두자

Dropbox public 링크 만들기
복사한 링크 텍스트를 텍스트 에디터에 복붙 한다.
예 > https://www.dropbox.com/s/xbrrsqruajf27p0/apnsguide.ipa?dl=0

에디터를 통해서 www.dropbox.com 을 아래 텍스트로 치환하고 url 텍스트 끝의 ?dl=0 를 삭제한다.
dl.dropboxusercontent.com
예> https://dl.dropboxusercontent.com/s/xbrrsqruajf27p0/apnsguide.ipa

url을 만든 후 웹브라우저에 복붙해봐서 파일이 잘 다운받아지는지 테스트 해본다.
https://dl.dropboxusercontent.com/s/xbrrsqruajf27p0/apnsguide.ipa

plist 파일의 생성
ad-hoc 배포를 위해서는 plist 라는 파일이 필요한데 XCode 6 이전에는 알아서 만들어주던걸 이제는 XCode가 만들어주지 않는다.
하는 수 없이 텍스트 편집기를 통해 만든다 (필자는 Sublime Text 2 를 사용했다.)

plist 템플릿

items assets kind software-package url [INSERT URL HERE] metadata bundle-identifier [INSERT BUNDLE ID HERE] bundle-version [INSERT VERSION HERE] kind software title [INSERT APP TITLE HERE]

url 부분에 아까 만든 url 를 넣도록 하자

이어서 bundle identifier를 삽입한다

버전이랑 타이틀을 대략 입력하고 완성된 모습은 아래와 같다.

만든 텍스트를 확장자 plist 파일로 저장한다. 이 때도 Dropbox 에 저장한다.

위에서 dropbox public link 를 만들었던걸 똑같이 한다.

다운로드 웹페이지를 만들어야 하는데 초 간단하게 html로 만들어 보자

html 템플릿

앱 다운받기

url 입력 부분에 아까 만든 plist 의 링크를 적는다.
완성되면 아래와 같다.

이걸 또 Dropbox 링크 만들기를 한다.
이쯤 되면 슬슬 dl.dropboxusercontent.com 이 외워질 것이다. ;;;;;;;;;

이걸 또 Dropbox 링크 만들기를 한다.

  1. 앱의 설치

끝나간다. 아까 최종으로 만들어진 html 의 주소를 iOS 기기에서 열어보자

웹페이지가 나타나고, '앱 다운받기' 링크를 클릭하자

홈 버튼을 눌러 메인화면으로 나와보면 앱이 설치되고 있는 것을 확인할 수 있다.

출처 : http://blog.naver.com/PostView.nhn?blogId=qqiwan&logNo=221465818852&parentCategoryNo=5&categoryNo=&viewDate=&isShowPopularPosts=true&from=search

profile
내가 볼려고 만든 블로그
post-custom-banner

0개의 댓글