iOS 앱을 빌드하는 것은 전통적으로 한 가지 의미를 가지고 있습니다: Xcode가 필요하고 Xcode는 macOS를 의미합니다. 이러한 제약은 Windows 또는 Linux에서 일하는 팀이거나 Mac 빌드 머신을 유지 관리하지 않으려는 경우 불편합니다.
__CAPGO_KEEP_0__와 __CAPGO_KEEP_0__ Build를 combination으로 사용하면 Windows 워크스테이션에서 iOS 빌드 및 TestFlight 제출이 가능합니다. Capacitor 윈도우에서 일반 웹 프로젝트처럼 개발하세요. Capgo (iOS 프로젝트를 생성하기 위해)와 __CAPGO_KEEP_0__ Build (클라우드에서 컴파일 및 서명하기 위해)
__CAPGO_KEEP_0__ (iOS 프로젝트를 생성하기 위해)와
- __CAPGO_KEEP_0__ Build (클라우드에서 컴파일 및 서명하기 위해)
- 보존
ios/원본 상태를 재현할 수 있도록 로컬 저장소에 유지하세요. - 로컬에서 실행하세요 (웹 빌드가 iOS 프로젝트에 복사됩니다).
cap sync__CAPGO_KEEP_0__ 빌드와 함께 iOS 클라우드 빌드를 트리거하세요. - Trigger an iOS cloud build with Capgo Build.
Capgo 앱에는 두 가지 별개의 "빌드"가 있습니다:
There are two separate “builds” in a Capacitor app:
- (JS/HTML/CSS): 이 작업은 로컬 Windows에서 수행합니다. 네이티브 빌드
- (Xcode 아카이브, 서명, 업로드): Capgo Build는 Mac 하드웨어에서 클라우드에서 이 작업을 수행합니다. (Xcode archive, signing, upload): Capgo Build does this on Mac hardware in the cloud.
Capgo ios/.
기본 조건
- Capacitor 앱이 작동 중이어야 합니다 (어떤 프레임워크든 상관 없습니다).
- Apple Developer 계정이 필요합니다.
- __CAPGO_KEEP_0__ 앱에 대한 App Store Connect 접근 권한 (TestFlight/App Store 제출을 위해).
- Capgo 계정과 API 토큰이 필요합니다 (
CAPGO_TOKEN).
1) Capacitor 앱을 만들거나 준비하세요 (Windows)
Capacitor 앱이 이미 있습니다면 Capacitor 단계로 건너 뛰세요.
예시: Vite
bun create vite@latest my-app
cd my-app
bun install
__CAPGO_KEEP_0__ 빌드는 정적 자산을 생성해야 합니다 (Vite의 경우 기본적으로): dist/ 2) __CAPGO_KEEP_0__와 iOS 플랫폼을 추가하세요
bun run build
Capacitor을 설치하세요:
Capacitor
bun add @capacitor/core @capacitor/ios
bun add -d @capacitor/cli
iOS 플랫폼 폴더를 초기화하고 생성하세요:
bunx cap init
bunx cap add ios
이 시점에서 __CAPGO_KEEP_0__ git에 커밋하세요. __CAPGO_KEEP_0__ Build는 폴더 내의 파일을 컴파일합니다. ios/ directory. Commit it to git. Capgo Build compiles what is inside ios/3) iOS 빌드 전에 웹 자산을 Sync하세요.
Windows에서 웹 앱을 변경할 때마다 이 순서를 반복하세요:
이것은 빌드된 웹 자산을 native iOS 프로젝트에 복사하는 것입니다 (__CAPGO_KEEP_0__ Build가 실제로 컴파일할 파일).
bun run build
bunx cap sync ios
cap sync 4) Capgo 및 __CAPGO_KEEP_1__을 설치하고 인증하세요.
Capgo Build는 CLI 및 __CAPGO_KEEP_2__를 통해 트리거됩니다. __CAPGO_KEEP_3__을 사용하여
Capgo Build is triggered via the Capgo CLI. With bun, use bunx:
bunx @capgo/cli@latest login
5) Cloud 빌드용 iOS 서명 구성
export CAPGO_TOKEN="your_api_key_here"
iOS 빌드를 위해 서명 자료가 필요합니다.
__CAPGO_KEEP_0__ Build는 __CAPGO_KEEP_1__ __CAPGO_KEEP_2__를 통해 트리거됩니다. __CAPGO_KEEP_3__을 사용하여
- 애플 DISTRIBUTION 인증서 (
.p12) 및 그 비밀번호 - 배포 프로파일 (
.mobileprovision) - 앱 스토어 연결 API 키 (
AuthKey_XXXXXX.p8) 및 메타데이터 (키 ID, 발급자 ID, 팀 ID)
이 파일들을 생성해야 하는 경우, Capgo 문서를 참조하세요:
- 인증 정보 관리 (저장해야 하는 것과 방법)
- iOS 인증서 및 배포 프로파일을 얻는 방법
가장 쉬운 방법은: Mac, 동료, 또는 일회용 임대Mac을 사용하여 한 번 생성/내보내고, 이후 Windows에서 재사용하는 것입니다.
파일들을 로컬에 저장한 후, Capgo 빌드에 저장하세요:
bunx @capgo/cli@latest build credentials save \
--platform ios \
--certificate ./cert.p12 \
--p12-password "password" \
--provisioning-profile ./profile.mobileprovision \
--apple-key ./AuthKey.p8 \
--apple-key-id "KEY123" \
--apple-issuer-id "issuer-uuid" \
--apple-team-id "team-id"
팁: CI에서 인증 정보 파일을 base64로 인코딩하여 비밀로 저장하고, 런타임에 디코딩한 후 동일한 명령어를 실행하세요. build credentials save command.
iOS 빌드를 Windows에서 트리거하세요.
앱 폴더에서:
bun run build
bunx cap sync ios
bunx @capgo/cli@latest build com.example.app --platform ios --build-mode release
터미널에서 실시간 로그를 볼 수 있습니다. App Store Connect 키가 설정되어 있다면, Capgo 빌드는 자동으로 테스트 플라이트에 결과 빌드를 제출할 수 있습니다.
웹 전용 변경 사항에 대한 빠른 반복:
Capgo 빌드는 네이티브 변경 사항에 대해:
- Capacitor 플러그인을 추가/제거하는 경우
- 네이티브 권한을 변경하는 경우
- 아이콘/스플래시를 변경하는 경우
- Capacitor를 업데이트하는 경우
- Swift/Objective-C 변경 사항의 경우
일상적인 UI 조정 및 JavaScript 수정을 위해, 일반적으로 __CAPGO_KEEP_0__ 빌드는 필요하지 않습니다. Live Updates (OTA), so you do not rebuild the native binary every time.
좋은 팀 워크플로우는 다음과 같습니다.
- Live Updates를 자주 변경되는 웹 변경 사항에 사용하세요.
- Capgo 빌드를 자주 사용하지 마세요. native 변경 사항이 필요할 때만 빌드하세요.
Windows의 일반적인 문제점 (및 해결 방법)
- 잊어버리다
cap sync: iOS 빌드에서 UI 변경 사항이 누락된 경우, iOS 빌드에 웹 앱을 빌드했지만 Sync를 수행하지 않았을 가능성이 있습니다.ios/. - git (또는 빌드 컨텍스트에) 폴더가 없으면, __CAPGO_KEEP_0__ 빌드는 앱을 재현할 수 없습니다.
ios/: Capgo Build compiles the native project. If the folder is not in git (or not in your build context), the build cannot reproduce your app. - : 플러그인을 추가하는 것은 native 변경 사항입니다. __CAPGO_KEEP_0__ 빌드 실행 (및 스토어 제출) 후에 계획하세요.Capgo
iOS 앱을 Windows에서 빌드하는 방법
Windows에서는 Xcode를 실행할 수 없지만, iOS 앱을 Windows에서 배포할 수 있습니다. Wrap your web app with __CAPGO_KEEP_0__ ( in your repo).
- Wrap your web app with Capacitor (
ios/Use __CAPGO_KEEP_0__ Build to compile, sign, and submit your iOS binary from the __CAPGO_KEEP_1__. - Keep going from Build an iOS App from Windows with __CAPGO_KEEP_0__ and __CAPGO_KEEP_1__ Build
cap sync. - Use Capgo Build to compile, sign, and submit your iOS binary from the CLI.
Build an iOS App from Windows with Capacitor and Capgo Build
to plan CI/CD automation, connect it with __CAPGO_KEEP_0__ and __CAPGO_KEEP_1__ Build. Build an iOS App from Windows with Capacitor and Capgo Build in your repo)에서 Wrap your web app을 사용하세요. 로컬에서 웹 자산을 빌드하고, __CAPGO_KEEP_0__ Build를 사용하여 iOS 바이너리를 컴파일, 서명, 제출하세요. __CAPGO_KEEP_1__에서. Capgo CI/CD Capgo CI/CD Capgo Native Builds Capgo Native Builds Capgo Integrations Capgo Integrations CI/CD Integration CI/CD Integration GitHub Actions Integration GitHub Actions Integration