Skip to main content
튜토리얼

Capacitor와 Capgo을 사용하여 윈도우에서 iOS 앱을 빌드하세요.

Capacitor으로 웹 앱을.wrap하고, Capgo Build를 사용하여 윈도우 개발 머신에서 실제 iOS 바이너리를 컴파일, 서명, 제출하세요. 테스트 플라이트에 Mac을 소유하지 않아도 됩니다.

Martin Donadieu

Martin Donadieu

콘텐츠 마케터

윈도우에서 iOS 앱을 만들기 위해 Capacitor와 Capgo을 사용하여 빌드하세요.

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 문서를 참조하세요:

가장 쉬운 방법은: 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).

  1. 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__.
  2. Keep going from Build an iOS App from Windows with __CAPGO_KEEP_0__ and __CAPGO_KEEP_1__ Build cap sync.
  3. 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

Capacitor 앱에 대한 실시간 업데이트

웹-layer 버그가 활성화된 경우 Capgo을 통해修정을 배포하는 대신 앱 스토어 승인까지 며칠 기다리지 마십시오. 사용자는 배경에서 업데이트를 받으면서 네이티브 변경 사항은 일반적인 검토 경로에 남게 됩니다.

시작하기

최신 블로그 게시물

Capgo은 전문적인 모바일 앱을 만들기 위해 필요한 최고의洞察력을 제공합니다.