본문 바로가기
iOS

[App Store] 앱 배포를 위한 과정

by DuncanKim 2023. 7. 9.
728x90

[App Store] 앱 배포를 위한 과정

 

 앱 배포는 굉장히 멀고도 험난한 길이라고 생각하지만, 굉장히 간단하다. 만약, 완벽하게 버그가 없는 앱을 만들었다면, 그리고 배포 시에 부족함 없이 애플 팀이 알아듣게 설명하는 문서가 있다면, 한 번에 통과 가능하다. 서버리스 앱의 경우, 앱에 치명적인 결함이 없는 경우, 대부분 통과가 된다. 아래에서는 완전히 다 만들어진 앱을 앱 스토어에 배포하는 방법에 대해 알아볼 것이다.

 

아, 참고로 개발자 계정을 가지고 있어야 한다. 개발자 계정이 있는 사람의 Xcode에서 Archive를 해야 바로 App Store Connect에 빌드 파일이 올라오기 때문이다. 다들 알다시피 1년 단위의 개발자 계정은 13만 원이다.

 

 

1. 앱 스토어 커넥트에서 문서 작성하기

 

1) 로그인하기

https://appstoreconnect.apple.com/login

 

https://appstoreconnect.apple.com/login

 

appstoreconnect.apple.com

앱 스토어 커넥트에서 본인의 개발자 계정으로 로그인한다.

 

2) 나의 앱 누르기

로그인하면 이런 화면이 보인다. ‘나의 앱’을 클릭한다.

 

+

앱 분석 또는 판매 및 추세는 앱이 등록되고 나서 어느 정도 시간이 지난 후 볼 수 있다.

 

 

3) 좌측 상단의 + 버튼 누르기

나의 앱을 누르면 이렇게 나온다. 우리 MC2 회오나의 자식 버닝버디와 내가 옛날에 낳은 도전100분이 보인다. 출시를 한 경험이 없다면, 이 화면은 빈 화면으로 나타날 것이다. ‘앱’이라는 글자 옆의 파란 플러스 버튼을 눌러보자.

도전100분은 버전 1.2 업데이트를 눈에 앞두고 있었지만… 귀찮음으로 인해 1.1에 머무르고 잇따…

 

4) 신규 앱 클릭

앱을 새로 내는 것이니 ‘신규 앱’을 누른다.

새 앱 번들은 기존의 앱을 묶어서 패키지로 팔 수 있는 버튼으로, 나도 안 해봤으니 패스한다.

 

5) 새 앱 정보 입력하기

그럼 이런 모달이 짠 하고 뜰 것이다.

이름은 앱 이름, 언어는 당연히 한국어를 선택해야 할 것이다.

그런데 번들 ID, SKU는 무엇이냐?

 

번들 ID는 기존에 작업한 프로젝트가 있다면, 이런 식으로 뜬다. Xcode에 있는 프로젝트의 Identifier를 보고 자동으로 생성해 주는 편이다. 그렇지만, 수정할 수 있고, 수정하고 싶다면 Xcode 안의 Target 파일을 수정해 주면 여기에서도 그런 식으로 뜬다. 그것을 선택하면 된다.

단, 앱 출시 이후에는 변경할 수 없으므로 신중하게 선택하도록 한다.

 

그럼 SKU는 무엇이냐?

 

이렇게 설정하면 된다. 앱의 고유한 ID라고 생각하면 되는데, 보통 Bundle ID의 앞 두 글자를 쓴다고 한다.

그런 다음 생성을 눌러준다.

 

6) 앱 정보 등록하기

이런 식의 화면을 볼 수 있다. 버닝버디의 화면을 기준으로 설명할 것이다.

꿀팁은 ‘저장’을 눌러가면서 해야 한다는 것.

일단 ‘미리 보기 및 스크린샷’을 등록해야 한다. 미리 보기는 선택사항이지만, 스크린 샷은 필수사항이다. 앱 내의 화면들을 스크린 샷으로 찍어야 한다.

6.5형과 5.5형 디스플레이로 찍은 것은 필수적으로 있어야 한다. iPhone 12 promax가 6.5 형이며, iPhone 8+가 5.5형이다. 시뮬레이터를 돌려서 이 두 가지 기기로 볼 수 있는 스크린 샷을 찍어야 한다.

그다음 프로모션 텍스트, 설명, 키워드를 쓴다. 이 버전에서 업그레이드된 사항은 나타나지 않을 것이다(첫 출시라면).

URL을 쓴다. 이것의 경우 회사 홈페이지 또는 본인의 블로그 게시물을 적기도 하는데, 우리의 경우 깃허브 페이지로 연결되게 하였다. 버전은 1.0 버전으로 쓰면 될 것이고, 저작권을 준수한 것이 있다면 써준다. 버닝버디의 경우 MIT License를 준수하기에 이를 명시해 주었다.

일단 그 중간에 빌드 부분이 있을 것인데, 일단 건너뛴다.

앱 심사 정보의 경우 가장 중요한 포인트이다. 이거 제대로 설명을 하지 않거나 이해가 되지 않게 쓴다면 리젝을 먹게 될 것이다.

우리의 경우, 저기에 충분히 설명을 써놓았다고 했지만, 결국 영상을 찍어 이해시켜 주는 지경에 이르렀다. 그래서 처음에 이해가 되지 않을 수 있는 앱의 경우 데모영상을 첨부 파일로 걸어놓거나, 앱 기능 설명서를 첨부 파일로 두고, 데모 영상을 유튜브에 업로드하여 메모 내부에 링크를 걸어주는 것도 좋다.

아래에는 버전 출시 부분이 있는데, 자동으로 버전 출시를 눌러준다.

 

7) 잡다한 설정하기

잡다한 설정의 시작이다. 일단 옆의 탭의 모든 부분을 들러야 한다고 보면 된다.

 

먼저 가격 및 사용 가능 여부이다.

가격은 공짜로 할 거니까 이렇게 설정해 준다.

 

그다음 사용 가능 여부도 모든 곳에서 사용가능하다고 눌러준다.

우리는 데이터를 수집하는 것이 없다. 데이터가 수집되지 않는다고 표시해 준다. 만약 서버가 있고, 데이터를 수집하는 것이 있다면 따로 설정해줘야 하는 부분이 있다. 그것은 나중에 알아보도록 하자.

위에 개인정보 처리방침이 있는데, 저건 대충 데이터가 수집되는 것이 없으면, 아래의 링크를 참고해 본다.

(그냥 대충 깃허브에 쑤셔 넣고 링크 걸어주면 된다)

https://github.com/DhKimy/CatstaGram/blob/main/CatstaGram/개인정보처리방침.txt

평가 및 리뷰, 버전 기록, 앱 심사는 첫 심사를 맡길 때는 활성화가 안되어 있다. 해줄 것이 없다는 뜻. 바로 앱 내 구입으로 넘어온다.

그다음 앱 내 구입이 있는지를 설정해 준다. 앱 내 구입이 없으면 없다고 해주면 된다. 지금은 버닝버디 화면이라서 이런데, 없음을 설정해주는 부분이 있다.

그 다음 구독 페이지도 있는데, 여기도 없다고 설정해준다.

앱 내 구입이 없으면 프로모션도 없다. 여기도 없음을 체크하면 된다.

기타 설정할 것이 있는데, 현재 런칭이 된 앱이라서 화면을 볼 수 없었다. 대표적으로 연령을 설정해 주는 페이지가 있으며, 개인정보 관련 페이지가 있다. 만약 이 과정을 하지 않았을 경우, 심사에 추가 버튼을 누를 경우, 뭐가 안 됐다고 하니, 그 부분을 계속 확인해 가며 부족한 부분을 채워 넣어주면 된다.

 

 

2. Xcode에서 Archive 하기

Archive에서 이번 프로젝트는 21시간 동안 막혀있었…다… 하지만 지금은 능숙하게 할 수 있다…

일단 버전 설정을 해준다. 처음이라면 1.0이겠다. 하지만, 버전 바꾸는 부분이 아래 부분에 있다는 것을 알면 신상에 좋다.

 

그다음 릴리즈 세팅을 해준다.

 

디바이스 설정을 Any iOS Device로 한다. m1의 경우 arm64로 해준다.

 

그 다음 상단의 빌드 타겟 부분을 눌러서 Edit Scheme을 누른다.

 

Build Configuration을 Release로 세팅해 준다.

 

그다음, Run이 아니라 Archive를 눌러준다.

 

빌드가 다되고 나면 최상단에 현재 버전의 빌드 파일이 있을 것이다. 그것을 선택하고 Distribute App을 누른다.

 

App Store Connect를 누른다.

  • Ad Hoc은 프리랜서가 개발사에 테스트 파일을 보내는 방식이라고 보면 된다.

 

Upload를 누르고 Next

 

기다리면…

 

두 가지를 눌러 놓고 Next

 

위에 거 누르고 Next

 

Upload 클릭

 

로딩 중….

이 화면에서 만약, 잘못된 부분이 있거나, 앱 심사 시 반려될 수 있는 것을 우선 체크하는데, 문제가 있으면 Upload가 되지 않는다. 문제를 수정하고, 다시 아카이브 하여 App Store와 Connect 해야 한다.

 

됐다! 이제 앱 스토어에 올라갔을 것이다. Done을 눌러 종료한다.

 

3. 빌드 추가 후 심사에 추가 누르기

 

아까 1에서 넘어간 부분이 있었다. 이 부분에 Archive를 하고 난 후 AppStore Connect를 했다면, ‘빌드 추가’가 뜬다.

 

바로 확인하면 빌드 추가 버튼이 활성화가 안 될 수 있다. 그럴 땐 잠시 화장실을 다녀오는 시간 정도면 빌드 추가 버튼이 활성화될 것이다.

되었다면 빌드 추가 버튼을 눌러본다.

 

이렇게 누르면 아까 Archive 한 파일이 나온다. 이것을 누르고 완료를 일단 누른다.

 

이러면 빌드 파일이 추가된 것이다. 수출 규정 관련 문서가 누락되었다고 하는데, 우리는 수출할 일도 없고, 암호화 관련 알고리즘도 없다. 그렇기 때문에 ‘없다’고 하면 된다. 관리 버튼을 눌러준다.

 

모든 알고에 해당하지 않음을 누르고 저장을 눌러준다.

 

그러면 이렇게 된다. 심사에 추가 버튼도 활성화 될 것이다.

그러면 심사에 추가를 누르고, 모든 사항을 한 번 더 확인한 후 최종 제출을 누르면 심사가 제출될 것이다.

‘수고했다…!’

 

4. 기다리기

인내심을 가지고 기다린다. 보통 첫 심사의 경우, 심사는 24시간 이내로 70%가 처리되고, 48시간 이내 90%가 처리된다. 오랜 시간이 걸리지 않으며, 만약 주말 또는 공휴일이 포함될 경우 더 길어질 수도 있다.

버전 업 심사의 경우, 많은 업데이트가 있지 않는 한 4시간 안에 될 때가 많았다…

(1.0.2의 경우 1시간 33분 걸렸다.)

 

5. 리젝 대응 또는 앱 스토어에서 흐뭇하게 앱 바라보기

리젝을 먹을 때가 있다. 그럴 때는 Apple Developer 계정의 이메일로 연락이 온다. 그럼 그 사안을 수정하면 된다. 리젝 대응은 다음 포스팅에서 자세히 다루겠다. 흐뭇하게 앱 바라보는 것은 각자 알아서 하면 되겠다.

 

이렇게 앱 배포를 어떻게 하는지 알아보았다.

 

앱 배포는 쉬운 듯하면서 귀찮은 것이 많고, 리젝 사항에 대응하는 것이 조금 귀찮은 작업이긴 하다. 리젝은 핑퐁 하듯이 1주~2주를 할 수도 있는데, 그 경우 블랙에 걸릴 수도 있다고 하니 참고하시기 바란다. 애플 팀이 하라는 대로만 하면 오랜 핑퐁 랠리는 없을 것이다.

그럼 이만!

728x90

댓글