IOS - Ad hoc 배포하기
당신이 ios 프리랜서 개발자이거나, 고객사의 의뢰를 받아서 앱을 개발하는 직원이라면 만든 ios 앱을 어떻게 그 사람들이 테스트 할 수 있게 할까? 앱스토어에 올린 다음에 다운로드해서 보라고 해야하나? 그럴 수도 있다... 안된다는 법은 없다. 다른 방법은 뭐가 있을까? 엔터프라이즈 계정이라는 녀석이 있다. 소문에 이 계정은 애플 개발자 계정 중에서 제일 좋은 계정이라고 한다. 고객 아이폰을 개발자 사이트에 등록하지 않아도 된다. 대신에 1년에 지불해야 될 돈도 많고, 만들기도 까다롭다고 한다. (1년에 30만원 이상이라고한다.) 쿨하게 패스. 일반 개발자 개정으로 어떻게 고객에게 ios 앱을 테스트 할 수 있게 하나?
Ad hoc 배포 준비
애플 개발자 사이트에서 배포용 인증서를 만들때 위 그림처럼 ios 배포 (ad hoc)에 체크를 하고 배포용 인증서와 배포용 프로비저닝 프로파일을 생성하면 된다. 참고로 배포용 프로비저닝 프로파일을 생성할 때, 테스트를 할 아이폰의 uuid를 등록해야 한다. xcode에서 테스트 폰으로 빌드할때 register device 라는 버튼이 활성화되어 등록할 수 있지만, 고객사는 Xcode가 무엇인지 모른다. uuid를 물어보고 직접 테스트 할 사람들의 아이폰 uuid를 프로비저닝 프로파일에 등록해주자.
ad hoc 배포용 인증서와 고객 uuid가 설정된 프로비저닝 프로파일이 만들어 졌다면 xcode에서 ipa 파일을 생성해주자. 이 포스팅 주제는 고객에게 아이폰 앱을 테스트 할 수 있는 환경을 제공하는 것이기 때문에, 인증서 생성과 프로비저닝 프로파일을 만드는 방법과 IPA 파일을 생성하는 방법은 언급하지 않는다. 여기서 부터는 IPA 파일이 생성되었다는 전제로 시작하겠다.
Dropbox 가입
Dropbox를 이용해서 앱 다운로드를 진행할 것이기 때문에 먼저 Dropbox에 가입을 해주자. 가입을 했다면 아무 폴더를 하나 만들어서 생성한 IPA파일을 넣어주자. 그리고 파일 우측에 공유라는 버튼이 보일 것이다. 공유버튼을 클릭하면 아래와 같은 팝업창이 뜬다. 링크복사를 클릭해주자. 링크를 메모장이나 에디터에 붙여넣기 해보자.
https://www.dropbox.com/s/xbrfgsgsfgruajf27p0/my.ipa?dl=0
위와 같은 주소형태일 것이다. 여기서 위의 도메인 즉 www.dropbox.com을 dl.dropboxusercontent.com으로 치환해주자. 그리고 마지막 ?dl=0 부분을 삭제해주자. 그럼 아래와 같은 주소가 된다.
https://dl.dropboxusercontent.com/s/xbrfgsgsfgruajf27p0/my.ipa
Plist 작성
plist는 아래 소스처럼 작성하면된다. 중요한 부분은 IPA파일이 위치한 경로를 정확하게 써주는것이다. 위에서 생성한 url을 복사 붙여넣기 해주자. 그리고 번들아이디, 앱버전, 앱이름을 차례대로 작성해주자.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>IPA 파일 경로</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>번들아이디</string>
<key>bundle-version</key>
<string>앱버전</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>앱이름</string>
</dict>
</dict>
</array>
</dict>
</plist>
IOS 앱 다운로드 페이지 작성
plist 작성이 완료되었으면 plist도 dropbox의 조금전 생성한 폴더에 업로드 해준다. 업로드 했다면 IPA 파일 주소를 수정했던것 처럼 plist 파일 옆에 공유버튼을 누르고 링크복사를 눌러준다. 그리고 도메인 주소 www.dropbox.com을 dl.dropboxusercontent.com으로 치환해주자. 그리고 마지막 ?dl=0 부분을 삭제해주자. 수정된 plist 주소를 메모장에 붙여놓자. 그 후 아래와 같은 html 파일로 구성된 ios 앱 다운로드 페이지를 작성해주자. 여기서 중요한점은 a 태그에 my.plist 경로 부분이다. 아래에는 url=my.plist경로 라고 되어있는데, 이 my.plist경로를 위에서 생성한 진짜 plist가 위치한 경로를 넣어준다.
<!doctype html>
<html>
<head>
<meta charset="utf-8"/>
<title></title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0"/>
<link rel="stylesheet" href=""/>
</head>
<body>
<a href="itms-services://?action=download-manifest&url=my.plist경로">app down</a>
</body>
</html>
IOS 앱 다운로드
이제 앱을 다운로드 할 차례다. 위에서 생성한 my.html 즉 앱 다운로드 파일을 위 파일들과 마찬가지로 dropbox의 해당폴더에 넣어준다. 마찬가지로 공유버튼 누르고, 링크복사 버튼을 누른다. 복사한 링크를 수정해준다. 위 파일들과 같이 도메인 주소 www.dropbox.com을 dl.dropboxusercontent.com으로 치환해주자. 그리고 마지막 ?dl=0 부분을 삭제해주자. 그렇게 생성된 주소는 아래와 비슷할 것이다.
https://dl.dropboxusercontent.com/s/4jy9hqshgfhg4h653z19sd9/my.html
이제 이 주소를 카톡으로 고객에게 공유해주자. 고객이 위의 url을 누르면 아래와 같은 창이 뜬다. 고객이 화면의 링크를 클릭하면 앱 다운로드가 진행된다.
'아이폰 개발 > ios 개념&튜토리얼' 카테고리의 다른 글
ios CollectionView 예제 - Section 생성 (0) | 2020.12.09 |
---|---|
ios CollectionView 예제 - 프로젝트 생성 (0) | 2020.12.09 |
IOS PUSH APNS 개념 (0) | 2020.12.03 |
IOS NSURLSession으로 Get 요청 Post 요청 - 구현 (0) | 2020.12.03 |
IOS NSURLSession으로 Get 요청 Post 요청하기 - 개념 (0) | 2020.12.02 |