iOS 인증 및 배포 절차 ( in-house 방식)
환경: OS X 10.10.3, Xcode 6.3.2
l 애플 개발자 홈페이지(Member Center) 작업 및 인증유효기간 확인
l 맥북 및 XCode 세팅
l 서버 세팅 ( https 서버만 가능 )
1. 애플 개발자 홈페이지(Member Center) 작업 및 인증유효기간 확인
- https://developer.apple.com/membercenter/index.action 여기에 들어가 Certificates, Identifiers & Profiles 를 선택하여 들어간다.
- 인증서 유효기간 확인
배포용 인증서 만료기간은 2016년 5월 19일이다. 따라서 만료 1달전쯤에 신규 인증서를 만들어서 그것을 이용한 아이폰앱을 재배포하여야 한다.
- Certificates : 어플 개발에 사용할 인증서 목록
개발용, 상용 Certificates 인증서를 생성하기 위해 cer 파일을 다운로드 받는다. (Worldwide Developer Relations Certificate Authorty 선택)
이 cer 파일을 맥북에서 더블클릭하면 인증서 추가 창이 뜬다. 키체인 옵션을 로그인 이나 시스템(시스템 전체에서 사용가능)으로 설정하고 추가한다.
Development 와 Production 중 원하는 것을 선택하고 “Continue” 버튼을 누른다.
CSR 파일을 생성하라는 안내문이 표시된다.
2번 항목의 [ 키체인 어플을 이용한 CSR 파일 생성 ] 먼저 실행하여 CertificateSigningRequest.certSigningRequest 파일을 생성한다.
CSR 파일을 업로드 할 수 있는 버튼이 표시된다. 버튼을 클릭하여 CSR 파일을 업로드한다.
CSR 파일을 업로드 한 후 「Continue」 버튼을 클릭하면 해당 인증서 신청이 완료되고 인증서 목록에 나타나게 된다.
정상적으로 인증서가 생성이 되었다면 인증서 목록에서 「Download」와「Revoke」 버튼이 표시된다. 여기서 「Revoke」 버튼은 인증서를 삭제하는 버튼으로 앱이 배포된 상태에서 이 버튼을 눌러 인증서를 삭제할 경우 앱 실행 자체가 안 되게 되므로 주의하도록 한다.
「Download」 버튼을 눌러 인증서 파일(예:distribution_identity.cer)을 다운로드하고 WWDR 인증서와 마찬가지로 해당 파일을 더블 클릭하여 키체인에 등록한다.
참고로 배포용으로 사용되는 인증서는 “SERVEONE Co., Ltd” 과 “kr.co.serveone.app.mobile” 이다.
- Identifiers : App ID 라고도 함, Xcode에서 Company Identifier 와 관련(prefix)
- Provisioning Profiles : Profile 관리 메뉴
“+” 버튼을 눌러 Provisioning Profiles를 신규 생성할 수 있다. 개발용과 배포용을 선택할 수 있다. 회사 서버에서 앱을 배포하는 경우는 in House를 선택한다.
“ServeOne App inhouse”를 다운로드 받아 실행한다.
“iOSTeam Provisioning Profile:kr.co.serveone.app.mobile”은 Xcode상에서 Archives를 선택하고 진행하면 자동으로 생성된다.
2. 맥북 및 XCode 세팅
[ 키체인 어플을 이용한 CSR 파일 생성 ]
- 맥북에 기본으로 제공하는 어플인 “키체인 접근” 어플을 실행
- [키체인 접근]->[인증서 지원]->[인증 기관에서 인증서 요청…] 메뉴를 클릭
- 요청을 위한 인증서 정보를 입력한다. E-mail과 이름 정도를 입력하면 된다. 옵션은 「디스크에 저장됨」을 선택한다.
- 만들게 될 인증서에 대한 선택사항을 지정한다. 키 크기는 2048 바이트, 알고리즘은 RSA로 지정 후 계속 버튼을 누른다.
- 인증서가 만들어졌다는 안내 문구가 표시되고 파인더에서 보기 버튼을 누르면 해당 경로로 이동하여 생성된 파일을 표시해준다.
[ 인증서 복사 및 추가]
인증서를 내보내기 할 경우 p12 파일이 생성되고, 그것을 작업할 맥북의 “키체인 접근”에서 항목 가져오기를 할 수 있다.
여러대의 맥에서 iOS 개발시 인증서 복사 : http://smilejsu.tistory.com/336
[ 인증서 설정 ]
네모난 상자를 누르면 Project에 대한 설정과, Target에 대한 설정을 변경할 수 있다. 이 두군데 모두 다 Code Signing Identity 와 Provisioning Profile을 위 이미지 처럼 변경해 준다.
실제 상용은 Release 를 사용하고 개발은 Debug를 사용한다.
Debug 설정은 Release 설정에 있는 것과 똑같이 해도 된다.
[ 아이폰 앱파일(ipa)생성 ]
Archives 메뉴를 실행하여 성공적으로 생성한 후
Window – Organizer 를 선택하면, 아래와 같은 화면이 나오는데, in-house 방식에서는 “Export…” 버튼만 사용하여 앱파일(ipa)을 생성한다.
Enterprise 배포는 vaildate 및 submit 를 사용하지 않는다. :
https://developer.apple.com/library/ios/qa/qa1830/_index.html
è ServeOne.ipa 파일 생성됨.
3. 서버 세팅 ( https 서버만 가능 )
In-house 방식으로 앱을 다운로드 하기 위해서는 ipa 파일과 plist 파일이 필요하고 모두 https 서버에 있어야 한다. (http 서버에 있으면 다운로드시 사이트 인증이 적합하지 않다는 팝업이 뜬다.)
[plist 파일 구성]
plist 링크는 반드시 https 를 사용해야 한다.(ipa 파일 링크도 꼭 https를 사용해야함)
http://stackoverflow.com/questions/20276907/enterprise-app-deployment-doesnt-work-on-ios-7-1
그렇지 않으면 XXX 사이트 인증서가 적합하지 않다는 오류가 나온다. ( cannot install applications because the certificate for XXX is not valid )
4. 참고 링크
in-house 방식 배포 공식 문서:
iOS 기업용 배포방식 In-House : http://wonzopein.com/31
인증서 참고 링크 : http://passion.dothome.co.kr/?p=53
iOS p12 생성 :
'iOS' 카테고리의 다른 글
iOS 앱 아이콘 만들기 (0) | 2019.05.07 |
---|---|
ios swift 키패드, 키보드 닫기, 숨기기 (0) | 2019.03.26 |
아이폰 오버스크롤 및 웹뷰 바운스 막기 (0) | 2015.05.29 |
오브젝티브 C : 상속, NSObject, 프로토콜, id형 (0) | 2014.08.01 |
iOS 앱 강좌 (0) | 2014.06.12 |