티스토리 뷰
프로젝트를 진행하면서 iOS 개발자만 시뮬레이터와 기기로 테스트하다 보니 이슈를 발견하는 데 한계가 많았다.
그래서 정식 앱 출시 전에 팀원들도 직접 사용해 보면서 테스트할 수 있게 베타 버전을 배포해야겠다고 생각했고, 결국 TestFlight를 사용하게 됐다.
TestFlight를 사용하면 프로젝트를 같이 진행하는 팀원들도 바로 테스트할 수 있고, 다양한 환경에서 실제로 앱이 어떻게 작동하는지 확인할 수 있다. TestFlight 사용법에 대해 알아보자!!
1. App Store Connect에 앱 만들기
https://appstoreconnect.apple.com/ 홈페이지에서 신규 앱을 하나 만들어준다.
아래의 항목들을 모두 입력해 주고 SKU는 App Store에 보이지 않는 앱의 고유한 ID라고 한다.
2. 앱 빌드 정보 및 환경 설정
1️⃣ 앱 버전명 변경
[Project Target -> General -> Identity -> Version, Build]에 앱 버전과 빌드 버전을 입력한다.
- Version: 앱 버전
- Build: 빌드 버전
✏️ 버전 번호 (Version Number)
- 목적: 소프트웨어의 릴리스 버전을 식별하는 데 사용
- 형식: 일반적으로 주 버전.부 버전.패치 버전 형태로 표기 (예를 들어, 1.2.3은 주 버전이 1, 부 버전이 2, 패치 버전이 3인 버전을 의미)
- 의미:
- 주 버전 (Major Version): 큰 변화나 새로운 기능이 추가될 때 증가 (예를 들어, 사용자 인터페이스가 크게 변경되거나 중요한 기능이 추가된 경우)
- 부 버전 (Minor Version): 작은 변화나 기능 개선이 있을 때 증가 (예를 들어, 기존 기능에 대한 개선이나 일부 기능 추가 등이 해당)
- 패치 버전 (Patch Version): 버그 수정이나 작은 수정 사항이 있을 때 증가 (큰 기능 변경 없이 문제를 해결하는 업데이트를 나타냄)
✏️ 빌드 번호 (Build Number)
- 목적: 소프트웨어의 특정 빌드를 식별하는 데 사용
- 형식: 보통 숫자로만 구성되며, 자동으로 증가
- 의미:
- 빌드 번호는 주로 개발자나 QA 팀이 특정 빌드를 추적하고, 버그 보고나 테스트 결과를 관리하는 데 사용
정리하자면,
버전 번호는 사용자에게 공개되며, 소프트웨어의 릴리스 버전을 구분하는 데 사용한다.
빌드 번호는 내부적으로 사용되며, 특정 버전의 개별 빌드를 구분하는 데 사용한다.
2️⃣ Scheme 설정
Edit Scheme로 Archive 진행 시 Debug와 Release 중 어떤 걸 사용할지 선택한다.
3. iOS앱 TestFlight에 업로드하기
1️⃣ Archive 진행
시뮬레이터를 Any iOS Device로 설정한다.
[Product -> Archive]를 선택하면 Archive를 진행한다. 빌드하는데 시간이 조금 소요된다.
2️⃣ 업로드할 앱 버전 선택
빌드가 완료되면 아래와 같은 창이 나오는데 업로드할 앱을 선택한 후 Distribute App을 클릭한다.
그럼 아래와 같은 뷰가 나오는데 App Store Connect를 선택한다.
정상적으로 모두 완료한 후 App Store Connect -> Test Flight를 확인하면 아래와 같이 처리 중으로 나온다.
그럼 성공했다~~
업로드 다 하고 나면 수출 규정 관련 문서 누락이라는 문구가 나오는데,,,, 클릭해 보니 암호화...? 무슨 소리인가 싶어서 찾아봤다.
아래의 블로그를 참고했는데 간략하게 설명하면,
앱 서버는 미국에 있기 때문에, 다른 국가에서 우리의 앱을 다운로드하는 행위는 미국에서 다른 국가로의 "수출"에 해당한다.
즉, 미국 서버에 있는 앱을 다른 나라 사용자가 다운로드하는 것은 수출로 간주된다.
특히, 이 과정에서 암호화 또는 정보 보안과 관련된 기술을 사용하고 있다면, 해당 사항에 대한 문서를 제출해야 할 수 있다.
예를 들어, HTTPS와 같은 암호화 기술을 사용하고 있다면, 수출 규정에 포함되며 관련 문서를 요구받을 수 있다고 한다,,,
따라서 위의 해당사항 중 적절하게 프로젝트에 맞는 항목을 선택하는 게 중요한 것 같다.
TestFlight 업로드 시 수출규정 관련 문서 누락 메시지 해결하기
안녕하세요. 그린입니다🟢 이번 포스팅에서는 앱 심사를 하기 전 TestFilght에 업로드 할때 수출규정 관련 문서 누락되었다는 메시지를 해결해보겠습니다🙌 (아주 간단하고 짧습니다..!) 개발자
green1229.tistory.com
📍 발생한 오류!!!
1️⃣ 세로모드 적용 에러
앱의 화면 회전 관련 에러라고 한다. 세로모드만 지원하기 위해서 Portrait만 체크했는데 이 부분이 문제가 된 것 같다.
앱은 기본적으로 멀티태스킹을 지원해서 모든 방향으로 회전이 가능해야 하는데 세로모드만 지원하니 오류가 발생한 것 같다.
이를 해결하기 위해서 iPad를 지원하는 앱이라면 Requires full screen을 반드시 체크해야 하며, iPhone만 지원하는 앱에서는 이 설정이 필요하지 않다.
[Project Target -> General -> Deployment Info]에서 Requires full screen 항목을 체크한다.
2️⃣ 앱 아이콘
AppIcon이 비어있어서 발생한 오류였는데 앱 아이콘이 기본값으로 들어가면 안 되는 것 같다.
assets 파일에 AppIcon을 넣어주니 해결되었다.
'스위프트' 카테고리의 다른 글
[Swift] - UnitTest 예제(Given-When-Then 패턴) (0) | 2024.10.01 |
---|---|
[Swift] - SwiftUI와 UIKit의 AutoLayout 차이 (0) | 2024.09.08 |
[Swift] - iOS 프로젝트 배포 환경별 build 세팅 (2) | 2024.08.23 |
[Swift] - UserDefaults, Keychain, Core Data (0) | 2024.05.07 |
[Swift] - Multiple commands produce Error (0) | 2024.05.05 |