내용으로 건너뛰기

iOS 빌드 계속하기

Capgo의 전용 맥 인프라를 사용하여 TestFlight 및 App Store로 iOS 앱을 빌드하고 제출하세요.

학습할 내용

학습할 내용
  • 앱을 업로드하는 방법을 배울 것입니다. Capgo 네이티브 빌드
  • Capgo 네이티브 빌드에 대한 인증서를 구성하는 방법을 배울 것입니다.

필수 조건

필수 조건
  • Capgo 계정 (무료试用도 충분합니다)
  • Capgo에 앱이 등록되어 있습니다 (run bunx @capgo/cli@latest app add 만약에 아니라면
  • Mac이 필요하지 않습니다: Capgo iOS 앱을 빌드하고 서명하는 과정을 클라우드에서 처리하므로 macOS, Windows, Linux에서 이 작업을 수행할 수 있습니다.
  • 앱이 성공적으로 빌드되어야 함 (Xcode로 지역적으로 빌드하거나 __CAPGO_KEEP_0__ 빌드)
  • Capgo 앱
  • A Capacitor app
  • __CAPGO_KEEP_0__

애플의 포털에서 시작하기 전에

제목: 애플의 포털에서 시작하기 전에

애플 계정과 팀이 준비되어 있는지 확인하기 전에 인증서를 설정하거나 첫 번째 테스트 플라이트 업로드를 트리거하지 마십시오:

  • 애플 계정에 두 단계 인증을 활성화하십시오:
  • 적절한 회원 유형을 선택하십시오:
    • 개인 / 단독 사업주: 판매자 이름은 앱 스토어에서 법적 개인 이름이 됩니다.
    • 단체: Apple Developer 프로그램에 가입한 회사나 기관의 법적 엔터티, D-U-N-S 번호, 공공 회사 웹사이트, 회사 도메인에 속한 이메일, 그리고 Apple의 계약에 회사에 대한 권한을 부여할 수 있는 사람의 정보가 필요합니다.
  • Apple Developer와 App Store Connect에 접근할 수 있는 계정을 사용하세요. 인증서, 앱 레코드, API 키, 테스트 플라이트에 대한 접근 권한이 필요합니다.
  • 최종 버전의 앱 아이디를 빠르게 결정하세요. 이후에 변경하면 일반적으로 앱 스토어 설정을 다시 시작해야 합니다.
  • 앱 리뷰 전에 다음 App Store Connect 항목을 계획하세요: 지원 URL, 개인 정보 정책 URL, 연령 등급, 스크린샷, 수출 준수, 앱 리뷰 연락처 정보
Apple Developer 등록을 시작하세요 웹에서 Apple 등록을 계속하세요 iOS 애플리케이션 빌더 Apple Developer 계정 유형을 선택하세요

첫 번째 수동 빌드

첫 번째 수동 빌드

앱을 빌드하기 전에 Capgo을 설정하고, 첫 번째 테스트 플라이트 빌드를 수동으로 생성해야 합니다. 수동 빌드를 먼저 하는 것은 몇 가지 이점이 있습니다:

  • __CAPGO_KEEP_0__에 대한 빌드 프로세스와 관련된 문제를 해결할 수 있습니다.
  • __CAPGO_KEEP_0__에 대한 App Store 기록을 생성해야 합니다.
  • You will be able to figure out any issues with the build process linked to your app code

앱 __CAPGO_KEEP_0__과 관련된 빌드 프로세스에서 문제를 해결할 수 있습니다.

설치 배포 인증서 설정

distribution 인증서 설정
  1. Xcode를 열기

  2. iOS 빌더 Xcode -> Settings... 또는 Cmd + ,

    Xcode 설정

  3. 로 이동하세요 Accounts Xcode 계정 탭

  4. Apple Developer 계정에 추가된 Apple 계정을 찾으세요 선택된 Apple 계정

  5. 앱을 배포할 팀을 찾으세요 Xcode 팀 찾기

  6. 버튼을 클릭하세요 Manage Certificates... 인증서 관리 Xcode 인증서 관리

  7. 분배 인증서를 목록에서 볼 수 있는지 확인하세요. Xcode 분배 인증서

  8. 그렇지 않다면 새로운 인증서를 생성해야 합니다.

    1. 버튼을 클릭하고 다음에 + Xcode 인증서 추가 Apple Distribution 인증서가 자동으로 생성됩니다. 목록에서 볼 수 있습니다. 이전 단계를 확인하여 인증서가 보이는지 확인하세요.
    2. 분배 인증서를 설치한 후에는 빌드 프로세스를 시작할 수 있습니다.

테스트 플라이트로 수동 빌드

분배 인증서를 설치한 후에는 빌드 프로세스를 시작할 수 있습니다.

“iOS 빌더를 사용하여 테스트 플라이트로 빌드하기”
  1. Xcode에서 앱을 열어보세요

    실행 bunx cap open ios 앱을 테스트 플라이트에 업로드하려면 Xcode에서 앱을 열어보세요.

  2. 버튼 archive 버튼

    Xcode 도구栏 product -> archive button.

    버튼

  3. Xcode 도구栏

  4. Xcode 도구栏 Distribute App 버튼

    Xcode 배포 버튼

  5. 선택 TestFlight Internal Only 배포 방법으로 선택하고 Distribute 버튼

    Xcode TestFlight 내부 배포 방법

  6. 앱 기록을 설정하세요

    다음 필드를 입력하세요:

    1. 이름: 앱 이름 - 앱 스토어에서 표시
    2. SKU - 앱의 SKU - 앱 스토어에서 앱을 식별하는 데 사용
    3. 기본 언어 - 앱의 기본 언어

    그 다음, next 버튼

    Xcode TestFlight 설정 앱 기록

  7. 앱 기록 생성이 실패하면 창을 닫고 앱을 다시 압축해 보세요.

  8. 업로드를 기다려 주세요.

  9. 모든 것이 잘 되었으면 다음 화면을 볼 수 있어야 합니다. Xcode TestFlight 업로드 완료

  10. 버튼을 클릭하세요. Done 버튼

모든 것이 잘 되었으면 생각할 수 있지만, TestFlight에서 앱을 볼 수 있게 되려면 몇 가지 더 해야 할 일들이 있습니다.

  1. TestFlight에 자신을 추가하세요.
  2. 빌드가 테스트가 가능하도록 수출 규정 완료하세요.
  3. 지원 URL, 개인 정보 보호 정책 URL, 연령 등 App Store Connect에서 필요로 하는 메타데이터를 완료하세요.
  4. 지원하는 기기와 일치하는 스크린샷을 준비하세요.
  5. 제품 제출 전에 App 리뷰 연락처 정보와 테스트 자격증을 추가하세요.

첫 번째 것을 시작해 보겠습니다.

테스트 플라이트에 자신을 추가하는 것입니다.

테스트 플라이트 추가하기
  1. iOS Builder 페이지 page 애플 개발자 계정으로 로그인하세요.

  2. 앱 레코드를 만들 때 사용한 팀을 선택하세요. 단일 개발자 계정만 있는 경우 이 단계를 건너뛸 수 있습니다.

  3. App Store Connect 팀 선택 팀을 선택한 후

  4. 버튼을 클릭하세요. Apps 버튼 앱 스토어 연결 앱 버튼

  5. 이전 단계에서 생성한 앱을 찾고 클릭하세요 앱 스토어 연결 앱 선택

  6. 클릭하세요 TestFlight 버튼 앱 스토어 연결 테스트 플라이트 버튼

  7. 클릭하세요 Internal Testers plus 버튼 앱 스토어 연결 내부 테스터 플러스 버튼

  8. 새 그룹 만들기

    그룹 이름을 "내부"이라고 합니다. 원하는 이름으로 지어도 됩니다.

    애플 스토어 연결 (App Store Connect) 그룹 만들기

  9. 클릭 Invite testers 버튼 애플 스토어 연결 (App Store Connect) 테스터 초대 버튼

  10. 그룹에 자신을 추가하세요

    자신의 이름 옆에 체크박스를 선택하세요. (자신을 확인하려면 페이지를 새로 고쳐야 할 수 있습니다) 그 다음, Add 버튼.

    애플 스토어 연결 (App Store Connect) 테스터 초대 체크박스

  11. 그룹에 자신이 추가되었는지 확인하세요

    애플 스토어 연결 (App Store Connect) 테스터 확인

    축하합니다 🎉
자신을 TestFlight에 추가했습니다. 이제 __CAPGO_KEEP_0__ Native Build을 구성하기 전에 한 가지 더 할 일만 남았습니다.

Congratulations 🎉 You have added yourself to TestFlight. Now, there is just one more thing you need to do before you can configure Capgo Native Build.

iOS 빌더 설정

iOS 빌더 설정

앱이 표준 암호화 방식을 사용하지 않는 경우 Apple에 약속해야 합니다. 표준 암호화 방식을 사용하지 않는 경우, 사용자 지정 알고리즘을 사용하는 경우, Apple 문서를 읽는 것을 추천합니다. Apple 문서 이 방법을 사용하여 앱을 빌드할 때마다 암호화 정보를 수동으로 설정할 수 있습니다.

  1. 플랫폼 정보 파일을 자동으로 설정하여 암호화 정보를 설정할 수 있습니다.
  2. 이 방법을 사용하여 시작하겠습니다. false.

앱 스토어 연결에서 테스트 플라이트 섹션을 찾으세요.

  1. 앱 스토어 연결에서 iOS 빌드 버튼을 클릭하세요.

  2. 클릭하세요 Builds -> iOS 누락된 암호화 정보가 있는 빌드를 클릭하세요.

  3. App Store Connect Manage 애플 스토어 연결 관리 빌드

  4. 애플 스토어 연결에 등록할 앱의 옵션을 선택하세요

    나는 이 옵션을 none이 옵션은 나에게 맞지만 당신에게는 다를 수 있습니다. 그 후, 저장을 클릭하세요

    애플 스토어 연결에서 준수 정보를 저장하세요

  5. 애플 스토어 연결이 준비가 된 상태로 표시되어야 합니다 ready to test

    두 번째 옵션에 대해, 다음 단계를 따라하세요:

파일을 열어보세요

  1. 다음 키를 추가하세요: Info.plist 클립보드에 복사

  2. iOS 빌더에서 다음 키를 추가하세요

    <key>ITSAppUsesNonExemptEncryption</key>
    <false/>
  3. 파일을 저장하세요

테스트 플라이트 앱을 설치하고 초대장을 수락하세요

테스트 플라이트 앱 설치 및 초대장 수락

현재, 거의 준비된 상태입니다. 테스트 플라이트에서 앱을 테스트하기 전에 다음 작업을 수행해야 합니다:

  1. 테스트 플라이트 앱을 다운로드하세요 다운로드 iOS/iPadOS 기기에서 앱 스토어에서
  2. 테스트 앱에 대한 초대 수락

테스트 플라이트 앱을 기기에서 설치하는 방법에 대한 세부 정보는 생략합니다. 앱을 설치하는 방법이 궁금하다면 구글에서 관련 가이드를 확인할 수 있습니다.

초대 수락에 대한 자세한 내용은 Apple에서 보낸 이메일에 있는 초대 링크를 클릭하면 됩니다.

  1. Apple에서 보낸 초대 링크를 클릭하는 이메일 열기

  2. 버튼 View in TestFlight 초대 링크 버튼 버튼

  3. 테스트 플라이트 설치 버튼 Install 초대 링크 버튼 기기에서 앱 설치

  4. 테스트 플라이트 앱을 기기에서 설치

    애플리케이션을 이전에 Xcode를 사용하여 설치한 경우 다음 화면을 볼 수 있습니다. 다음 버튼을 클릭하세요. install button. TestFlight 앱 설치

  5. 앱 설치를 기다려 주세요.

  6. 클릭하여 Open 버튼을 클릭하세요

축하합니다 🎉 You have accepted the invitation to test your app in TestFlight. Now, you can configure Capgo Native Build to build and submit your app to TestFlight.

Capgo Native Build 설정

Capgo Native Build 설정

There are a few things you need to configure in Capgo Native Build to be able to build and submit your app to TestFlight. Here is a list of the things you will pass to the Capgo CLI:

Parameter설명
--platformiOS를 위한 플랫폼 (ios)
--apple-team-id애플 개발자 팀 ID (애플 개발자 포털에서 찾을 수 있음) 애플 개발자 포털)
--apple-key앱 스토어 연결 API 키 파일의 경로 (.p8 파일)
--apple-key-id앱 스토어 연결 API 키의 키 ID
--apple-issuer-id앱 스토어 연결 발급자 ID
--certificate배포 인증서의 경로 (.p12 파일)
--ios-provisioning-profile배포 프로파일 매핑 (bundleId=path 또는 단일 프로파일의 경로)

예제 명령어:

터미널 창
bunx @capgo/cli@latest build credentials save \
--platform ios \
--apple-team-id YOUR_TEAM_ID \
--apple-key '/path/to/AuthKey_XXXXX.p8' \
--apple-key-id YOUR_KEY_ID \
--apple-issuer-id YOUR_ISSUER_ID \
--certificate '/path/to/certificate.p12' \
--ios-provisioning-profile '/path/to/profile.mobileprovision'

팀 ID

팀 ID

팀 ID를 찾으세요. 찾는 건 매우 쉬워요.

  1. 가장 애플 개발자 계정 스크롤 다운

  2. Find the Team ID

    애플 키, 애플 키 ID 및 애플 발급자 ID

애플 키, 애플 키 ID 및 애플 발급자 ID

애플 키, 애플 키 ID 및 애플 발급자 ID

이제 애플 키로 넘어가겠습니다.

  1. Go to App Store Connect 사용자 및 액세스 페이지로 이동하세요.

  2. 선택한 팀이 맞는지 확인하세요.

    1. 상단 우측에서 이름을 클릭하세요.
    2. 사용하고 싶은 팀을 클릭하세요. 애플 개발자 키의 팀 선택
  3. 클릭하세요. Integrations 버튼 앱 스토어 연결 통합 버튼

  4. 찾아보세요. issuer

    클릭하여 copy 발급자 복사 버튼을 클릭하세요. 애플 스토어 연결 발급자 복사 버튼

  5. 클릭하여 애플 스토어 연결 키 추가 버튼

  6. 키 이름을 설정하고 액세스 권한을 설정하세요. App manager 클릭하여 Generate button 키 ID를 저장하세요.

  7. 주의

    애플 스토어 연결 복사 키 ID

  8. 키를 다운로드하세요

    애플 스토어 연결 다운로드 키

    애플 스토어 연결 다운로드 키 경고

축하합니다 🎉 애플 키, 애플 키 ID 및 애플 발급자 ID를 생성했습니다.

인증서를 내보내기에 준비되었습니다. 이 가이드의 첫 번째 단계에서 분배 인증서를 설정했습니까?

애플은 무한 지혜로, 인증서를 내보내기 위한 방법을 생성 방법과 다르게 결정했습니다 🙃 설정 방법에 대해 알아보겠습니다:

  1. 키 체인 액세스 열기

    1. 클릭 Command + Space 검색 바를 열기
    2. iOS 앱 빌더 Keychain Access
    3. 검색 Keychain Access 앱
  2. 분류 login 버튼 My Certificates button 인증서 목록에서 인증서 찾기

  3. 인증서 이름

    Keychain Access 인증서 찾기 Apple Distribution: [Your Name/Company] (your team ID) 인증서 오른쪽 클릭하고

  4. 인증서 속성 선택 Export 인증서 export

  5. 인증서를 저장하세요 .p12 파일

    1. 파일 형식이
    2. 버튼을 클릭하세요 Personal Information Exchange (.p12)
    3. 주의 Save button

    인증서 저장 대화창

  6. 비밀번호를 묻는 경우, 다음 중 하나를 선택할 수 있습니다:

    • 비밀번호를 생략 (간단함을 위해 권장): 클릭 OK 비밀번호를 입력하지 않고 클릭
    • 비밀번호 설정: 인증서를 비밀번호로 보호하려면 여기에 비밀번호를 설정할 수 있습니다. 비밀번호로 보호된 .p12 파일은 Capgo CLI에 의해 완전히 지원됩니다. - 구성 명령을 실행할 때 비밀번호를 제공하세요. --p12-password 인증서 저장 대화창

    로그인 키체인 비밀번호를 묻는 경우, Mac에 로그인하는 비밀번호를 입력하세요.

  7. Mac에 로그인하는 비밀번호를 입력하세요. 그런 다음,

    버튼을 클릭하세요. Allow 로그인 키체인 비밀번호

    인증서 저장 대화창

축하합니다 🎉 인증서를 성공적으로 내보냈습니다.

인증서 배포 프로파일

인증서 배포 프로파일

이제 인증서 배포 프로파일을 내보내실 준비가 되셨습니다. 정말로, Apple에서 더 이상 필요로 하지 않을 것입니다.

  1. 이동 Apple Developer 프로파일

  2. 선택란에서 올바른 팀을 선택하세요

    1. 상단 우측에 있는 이름을 클릭하세요
    2. 사용하고 싶은 팀을 클릭하세요 Apple Developer 키 팀 선택
  3. 올바른 페이지에 있는지 확인하세요 이미지와 같은 페이지가 아니라면, 사이드바에서 클릭하세요 profiles 인증서 배포 프로파일

    애플 개발자 프로필 페이지

  4. 애플 개발자 프로필 추가 버튼을 클릭하세요. + 버튼 애플 개발자 프로필 추가 버튼

  5. 프로필 유형을 선택하세요. 선택 App Store Connect 버튼 Continue 버튼

    애플 개발자 프로필 유형 선택

  6. 앱을 선택하세요.

    애플 개발자에서 앱을 찾고 버튼을 클릭하세요. Continue 버튼

    애플 개발자 앱 선택

  7. iOS 빌더에서 올바른 배포 인증서를 선택하세요.

    이전 단계에서 내보낸 인증서를 선택하고 버튼을 클릭하세요. Continue 버튼

    Apple Developer에서 배포 인증서 선택

    인증서를 선택할 수 없다면, Keychain Access로 돌아가 내보낸 인증서를 찾고 만료일을 확인하세요.

    Apple Developer에서 배포 인증서 선택 만료일

  8. 프로파일 이름을 지정하세요.

    프로파일 이름을 지정하고 버튼을 클릭하세요. Generate 버튼

    애플 개발자 이름 프로필

  9. 프로필을 다운로드하세요

    클릭하여 Download 버튼을 클릭하여 프로필을 다운로드하세요

    애플 개발자 프로필 다운로드

축하합니다 🎉 Capgo 네이티브 빌드 구성에 필요한 모든 것을 이제 가지고 있습니다.

설정 명령어를 실행하는 중입니다.

설정 명령어를 실행하는 중입니다.

잘했어요! 이제 Capgo Native Build을 구성하기 위해 필요한 모든 것을 갖추셨습니다.

실행해야 하는 명령어는 다음과 같습니다.

터미널 창
bunx @capgo/cli@latest build credentials save \
--platform ios \
--apple-team-id UVTJ336J2D \
--apple-key ./capgo-tutorial/AuthKey_66FGQZB566.p8 \
--apple-key-id 66FGQZB566 \
--apple-issuer-id 0cd4db4a-5598-45b8-9d32-75cdf127d005 \
--certificate ./capgo-tutorial/capgo-build-tutorial-certificate.p12 \
--ios-provisioning-profile ./capgo-tutorial/capgo_native_build_tutorial.mobileprovision

__CAPGO_KEEP_0__ __CAPGO_KEEP_1__ 인증서 저장 출력

Capgo CLI 인증 정보 저장 결과

CI/CD 설정 (GitHub Actions)

CI/CD 설정 (GitHub Actions)

팀 ID 팀 ID, 인증서, , 그리고배포 프로파일 프로비전 프로파일CI/CD를 위한 모든 것이 이미 준비되어 있습니다. 이 섹션은 CI/CD에 필요한 값을 GitHub Actions 비밀번호와 환경 변수로 전달하는 방법에만 집중합니다.

1) Base64 인증서 파일을 단일 줄로 변환하세요.

1) Base64 인증서 파일을 단일 줄로 변환하기
터미널 창
# Distribution certificate (.p12)
base64 -i ./capgo-tutorial/capgo-build-tutorial-certificate.p12 | tr -d '\n' > certificate_base64.txt
# Provisioning profile (.mobileprovision)
base64 -i ./capgo-tutorial/capgo_native_build_tutorial.mobileprovision | tr -d '\n' > profile_base64.txt
# App Store Connect API key (.p8)
base64 -i ./capgo-tutorial/AuthKey_66FGQZB566.p8 | tr -d '\n' > apple_key_base64.txt

2) 저장소 비밀번호를 생성하세요.

2) 저장소 비밀번호를 생성하기

InSection GitHub > Repository > Settings > Secrets and variables > Actions, 추가:

비밀 이름값
CAPGO_TOKENYour Capgo API 토큰
APP_STORE_CONNECT_TEAM_ID팀 ID 팀 ID
APPLE_KEY_ID키 ID 애플 키, 애플 키 ID 및 애플 이슈어 ID
APPLE_ISSUER_ID이수어 ID 애플 키, 애플 키 ID 및 애플 이슈어 ID
BUILD_CERTIFICATE_BASE64내용 certificate_base64.txt
CAPGO_IOS_PROVISIONING_MAPCLI으로 생성되었습니다. — 복사 .capgo-credentials 파일
APPLE_KEY_CONTENT내용 apple_key_base64.txt
P12_PASSWORD (선택)당신의 .p12 비밀번호가 설정된 경우 내보내기 중에 설정된

3) 당신의 GitHub 액션 워크플로우에서 환경 변수를 사용하세요

제목 ‘3) 당신의 GitHub 액션 워크플로우에서 환경 변수를 사용하세요’
github/워크플로우/ios-빌드.yml
name: iOS Cloud Build
on:
workflow_dispatch:
push:
branches: [main]
jobs:
ios-build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- name: Request iOS build with Capgo
run: bunx @capgo/cli@latest build request --platform ios
env:
CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
APP_STORE_CONNECT_TEAM_ID: ${{ secrets.APP_STORE_CONNECT_TEAM_ID }}
APPLE_KEY_ID: ${{ secrets.APPLE_KEY_ID }}
APPLE_ISSUER_ID: ${{ secrets.APPLE_ISSUER_ID }}
BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }}
CAPGO_IOS_PROVISIONING_MAP: ${{ secrets.CAPGO_IOS_PROVISIONING_MAP }}
APPLE_KEY_CONTENT: ${{ secrets.APPLE_KEY_CONTENT }}
P12_PASSWORD: ${{ secrets.P12_PASSWORD }}

빌드 실행

Running the build

이제 첫 번째 빌드를 실행할 준비가 되었습니다.

Now, you are ready to run your first build.

앱을 빌드하기 위해 다음 명령어를 실행하세요:
bunx @capgo/cli@latest build request --platform ios

터미널 창

Terminal window

복사

Copy to clipboard --submit-to-store-review 축하합니다! 🎉 앱 빌드가 성공적으로 완료되었으며 앱 스토어에 제출할 준비가 되었습니다.

앱을 빌드하기 위해 다음 명령어를 실행하세요:
npx @capgo/cli@latest build request com.example.app \
--platform ios \
--build-mode release \
--ios-distribution app_store \
--submit-to-store-review \
--store-release-name "1.2.3" \
--store-release-notes "General improvements" \
--store-release-notes-locale "en-US=General improvements" \
--store-release-notes-locale "nl-NL=Algemene verbeteringen" \
--store-release-notes-locale "fr-FR=Ameliorations generales" \
--no-ios-automatic-release

애플리케이션 스토어 연결 API 키 인증 정보(APPLE_KEY_ID, APPLE_ISSUER_ID, APPLE_KEY_CONTENT, APP_STORE_CONNECT_TEAM_ID). 앱별 암호 업로드 및 ad_hoc 배포는 리뷰 제출을 위해 빌드를 제출할 수 없습니다. --store-release-name 은 앱 스토어 버전입니다. 생략 시 Capgo은 Xcode 프로젝트에서 읽습니다. MARKETING_VERSION 은 기본 앱 스토어 '새로운 것' 텍스트이며, 각 --store-release-notes 은 스토어 로케일화를 위해 앱별로 오버라이드할 수 있습니다. --store-release-notes-locale "locale=notes" 을 사용하여 애플 승인 후 자동으로 릴리즈하거나 --ios-automatic-release 을 기다리십시오. --no-ios-automatic-release 은 외부 베타 배포에 여전히 사용 가능하지만 앱 스토어 리뷰 제출에 필수는 아닙니다. --ios-testflight-groups 애플 스토어 리뷰 제출을 위한 요구 사항은 더 이상 없습니다. 외부 베타 배포를 위해 여전히 사용할 수 있습니다.

iOS 배포 모드

iOS 배포 모드 제목

기본적으로 Capgo은 iOS 앱을 App Store 배포용으로 빌드합니다 (TestFlight + App Store). 내부 테스트 또는 CI 아티팩트 수집을 위해 ad-hoc 빌드를 필요로 한다면, Enterprise (In-House) 배포와는 다르게 별도의 Apple Developer Enterprise 계정과 다른 프로비전 프로파일을 사용하는 Enterprise 배포가 아닌 ad-hoc 빌드를 사용할 수 있습니다. --ios-distribution flag.

  • iOS 앱을 직접 등록된 기기(테스트 플라이트 사용하지 않음)에 배포하고 싶습니다.
  • App Store Connect API 키를 사용하지 않거나 사용할 수 없습니다.
  • iOS 앱 빌드 결과물 수집을 위해 --output-upload App Store에 제출하지 않고

iOS ad-hoc 빌드는 App Store 빌드보다 적은 요구 사항을 가지고 있습니다:

인증 정보필요한가요?
Distribution certificate (인증서).p12)Yes
앱 배포 인증서 (.mobileprovision)Yes
팀 ID ("--apple-team-id)Yes
애플 앱 스토어 연결 API 키 (.p8)No
애플 키 ID / 발급자 IDNo

ad-hoc 배포 프로파일 생성

ad-hoc 배포 프로파일 생성

배포 프로파일 context5단계에서, Ad Hoc 대신 애플 스토어:

  1. Go to 클릭
  2. 버튼 + 선택
  3. Select Ad Hoc 앱과 배포 인증서를 선택
  4. 선택
  5. 등록하고자 하는 기기를 선택하세요
  6. 프로파일 이름과 다운로드

임의적 인증서 저장

임의적 인증서 저장
터미널 창
bunx @capgo/cli@latest build credentials save \
--platform ios \
--ios-distribution ad_hoc \
--apple-team-id YOUR_TEAM_ID \
--certificate './certificate.p12' \
--ios-provisioning-profile './adhoc_profile.mobileprovision'

아니요 --apple-key, --apple-key-id, 또는 --apple-issuer-id 필요하지 않습니다.

임의적 빌드 실행

임의적 빌드 실행
터미널 창
bunx @capgo/cli@latest build request \
--platform ios \
--ios-distribution ad_hoc

IPA를 빌드 아티팩트로 수집하기 위해 추가해야 하는 항목 --output-upload:

터미널 창
bunx @capgo/cli@latest build request \
--platform ios \
--ios-distribution ad_hoc \
--output-upload

CI/CD에 어드혹 빌드를 추가

CI/CD에 어드혹 빌드를 추가

GitHub 액션의 경우 앱 스토어 빌드보다 비밀을 더 적게 필요합니다:

github/workflows/ios-adhoc-build.yml
name: iOS Ad-Hoc Build
on:
workflow_dispatch:
jobs:
ios-adhoc:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- name: Request iOS ad-hoc build
run: bunx @capgo/cli@latest build request --platform ios --ios-distribution ad_hoc --output-upload
env:
CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
APP_STORE_CONNECT_TEAM_ID: ${{ secrets.APP_STORE_CONNECT_TEAM_ID }}
BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }}
CAPGO_IOS_PROVISIONING_MAP: ${{ secrets.CAPGO_IOS_PROVISIONING_MAP_ADHOC }}
CAPGO_IOS_DISTRIBUTION: ad_hoc

확장 프로그램이 포함된 앱 (다중 대상 인증)

제목 '확장 프로그램이 포함된 앱 (다중 대상 인증)'

앱이 확장 프로그램을 포함하고 (공유 확장 프로그램, 위젯, 알림 서비스 확장 프로그램 등)이면, 각 확장 프로그램 대상에는 자신의 인증서 파일이 필요합니다. Capgo은 반복 가능한 --ios-provisioning-profile flag.

예제: 앱 + 공유 확장 프로그램

제목 '예제: 앱 + 공유 확장 프로그램'
터미널 창
bunx @capgo/cli@latest build credentials save \
--platform ios \
--apple-team-id YOUR_TEAM_ID \
--apple-key '/path/to/AuthKey_XXXXX.p8' \
--apple-key-id YOUR_KEY_ID \
--apple-issuer-id YOUR_ISSUER_ID \
--certificate '/path/to/certificate.p12' \
--ios-provisioning-profile "com.example.app=./app_profile.mobileprovision" \
--ios-provisioning-profile "com.example.app.share-extension=./share_ext_profile.mobileprovision"

각 --ios-provisioning-profile 플래그는 번들 ID를 인증서 파일로 맵핑합니다. CLI:

  1. 모바일 프로비전 파일을 읽습니다.
  2. 내장된 plist에서 프로파일 이름을 자동으로 추출합니다.
  3. 파일을 Base64로 인코딩합니다.
  4. 모든 것을 단일 CAPGO_IOS_PROVISIONING_MAP 인증서

싱글 프로파일에서 마이그레이션

싱글 프로파일에서 마이그레이션하는 방법

이전에는 (싱글 프로파일) 사용하셨다면 다음을 실행하세요. BUILD_PROVISION_PROFILE_BASE64 싱글 프로파일에서 마이그레이션하는 방법

터미널 창
bunx @capgo/cli@latest build credentials migrate --platform ios

이것은 기존의 단일 프로파일 인증 정보를 새로운 형식으로 변환하고 레거시 키를 제거합니다 ( CAPGO_IOS_PROVISIONING_MAP 이전의 레거시 키를 제거한 후, 다음 명령어를 사용하여 확장 프로파일을 추가합니다 (합집합):BUILD_PROVISION_PROFILE_BASE64, APPLE_PROFILE_NAME).

팁 update 사용

터미널 창
bunx @capgo/cli@latest build credentials update \
--platform ios \
--ios-provisioning-profile "com.example.app.share-extension=./share_ext_profile.mobileprovision"

제목이 "프로비저닝 프로파일이 XYZ 기능을 포함하지 않습니다."인 섹션

Provisioning profile "YOUR_PROVISIONING_PROFILE_NAME" doesn't include the XYZ capability. (in target 'App' from project 'App')"

클립보드 복사

이러한 오류가 발생하는 이유는 프로비저닝 프로파일이 생성된 후에 새로운 기능을 활성화했기 때문입니다.

  1. Open 애플 개발자 포털
  2. 다음 팀을 선택하세요. 애플 개발자 키 팀 선택
  3. 버튼 Profiles 애플 개발자 프로필 버튼 재생성하고 싶은 프로비전 프로파일을 찾으세요.
  4. 애플 개발자 프로파일 찾기 애플 개발자 프로파일 편집
  5. 버튼 Edit 애플 개발자 프로필 버튼 애플 개발자
  6. 버튼 Save 버튼 애플 개발자 프로필 저장
  7. 클릭하여 Download 버튼 애플 개발자 프로필 다운로드
  8. Capgo 네이티브 빌드 설정 명령을 다시 실행하세요. __CAPGO_KEEP_0__ 네이티브 빌드 설정 명령을 다시 실행하세요.

이 문제는 해결됩니다.

설명: Capgo 네이티브 빌드, 인증 정보 구성 또는 앱 빌드와 관련하여 문제가 발생하는 경우, 언제든지 우리의 지원.

iOS 빌드에서 계속

iOS 빌드에서 계속

iOS 빌드에서 계속하는 경우 iOS 빌드 iOS 빌드와 연결하여 Capgo CI/CD Capgo CI/CD에서 제품 워크플로우 Capgo 네이티브 빌드 Capgo 네이티브 빌드에서 제품 워크플로우 Capgo 통합 Capgo 통합에서 제품 워크플로우 CI/CD 통합 CI/CD 통합 구현 세부 사항에 대해 GitHub 액션 통합 GitHub 액션 통합 구현 세부 사항에 대해