Capawesome Cloud
Set up and manage native builds, live updates, and app store publishing for Capacitor apps using Capawesome Cloud.
Prerequisites
- 1. A Capawesome Cloud account and organization.
- A Capacitor 6, 7, or 8 app.
- Node.js and npm installed.
- For Native Builds: The app must be in a Git repository (GitHub, GitLab, Bitbucket, or Azure DevOps).
- For Apple App Store Publishing: An active Apple Developer Program membership and an app created in App Store Connect.
- For Google Play Store Publishing: A Google Play Developer account and an app created in Google Play Console with at least one version uploaded manually.
General Rules
Before running any @capawesome/cli command for the first time, run it with the --help flag to review all available options.
Procedures
Step 1: Authenticate with Capawesome Cloud
CODEBLOCK0
For CI/CD, use token-based auth:
CODEBLOCK1
Step 2: Create an App in Capawesome Cloud
Skip if the user already has an app ID.
CODEBLOCK2
The CLI prompts for organization and app name, then outputs the app ID (UUID). Save for subsequent steps.
Step 3: Identify Required Feature(s)
Ask the user which Capawesome Cloud feature(s) to set up:
- 1. Native Builds — Build iOS and Android apps in the cloud.
- Live Updates — Push OTA web updates to deployed apps.
- App Store Publishing — Automate submissions to Apple App Store or Google Play Store.
The user may select one or more features. Proceed to the corresponding sections below.
Native Builds
Read references/native-builds.md for the full native builds setup and usage procedure. This covers:
- - Connecting a Git repository
- Uploading signing certificates (Android keystores, iOS .p12 + provisioning profiles)
- Configuring environments and secrets
- Configuring build settings (monorepos, custom build commands)
- Triggering builds
- Monitoring and downloading build artifacts
- Configuring native configuration overwriting with Trapeze
- Setting up CI/CD pipelines
Live Updates
Read references/live-updates.md for the full live updates setup and usage procedure. This covers:
- - Installing the
@capawesome/capacitor-live-update plugin - Configuring the plugin in Capacitor config
- Adding rollback protection
- Adding update logic (Always Latest, Manual Sync, Force Update)
- Configuring iOS Privacy Manifest
- Configuring version handling (versioned channels, versioned bundles)
- Testing the setup
App Store Publishing
Read references/app-store-publishing.md for the full app store publishing setup and usage procedure. This covers:
- - Creating Apple App Store destinations (API Key or Apple ID auth)
- Creating Google Play Store destinations
- Deploying builds to destinations
- Building and deploying in one step
Error Handling
Native Builds
- -
invalid source release: 21 → Set JAVA_VERSION env var to 17 or 21. Read references/build-troubleshooting.md. - INLINECODE11 → Set
NODE_OPTIONS env var to --max-old-space-size=4096. Read references/build-troubleshooting.md. - Authentication errors → Re-run
npx @capawesome/cli login. For CI/CD, verify the token. - Missing signing certificate → Upload via
apps:certificates:create. Read references/certificates-android.md or references/certificates-ios.md. - Expired provisioning profile → Regenerate in Apple Developer Portal and re-upload. Read
references/certificates-ios.md. - Web build step fails → Ensure
package.json has capawesome:build or build script. Read references/build-configuration.md.
Live Updates
- -
npx cap sync fails → Verify plugin version matches Capacitor version in package.json. - Bundles not applied → Ensure
LiveUpdate.ready() is called before readyTimeout expires. - App reverts to default bundle after restart →
ready() likely not called. Add it early in app init. - Upload auth errors → Re-run
npx @capawesome/cli login. - Updates not detected with
autoUpdateStrategy: "background" → Updates only checked if last check was >15 min ago. Force-close and restart. - Read
references/live-update-plugin-api.md for the full SDK API reference. - Read
references/live-update-faq.md for compliance, billing, and limitations.
App Store Publishing
- - Authentication errors → Re-run
npx @capawesome/cli login. - Destination creation fails → Verify credentials. Read
references/apple-app-store-credentials.md or references/google-play-store-credentials.md. - iOS build not appearing in TestFlight → Build processing may take time. Common causes: build number not incremented, missing Privacy Descriptions in
Info.plist, insufficient permissions. - Google Play deployment fails → Ensure first version was uploaded manually. Verify service account has Release permissions.
- Deployment timeout → Use
--detached flag and check logs with apps:deployments:logs. - INLINECODE39 fails with "build not found" → Ensure the build completed successfully.
- Cancel a stuck deployment →
npx @capawesome/cli apps:deployments:cancel --app-id <APP_ID> --deployment-id <DEPLOYMENT_ID>.
Related Skills
- -
capacitor-app-development — For general Capacitor development topics, CI/CD patterns, and troubleshooting. capawesome-cli — For the full Capawesome CLI command reference, project configuration, and CI/CD integration details.capacitor-plugins — For installing and configuring Capacitor plugins, including the @capawesome/capacitor-live-update plugin.ionic-appflow-migration — For migrating existing Ionic Appflow projects to Capawesome Cloud.capacitor-in-app-purchases — For setting up in-app purchases and subscriptions before publishing to app stores.
Capawesome Cloud
使用 Capawesome Cloud 为 Capacitor 应用设置和管理原生构建、实时更新以及应用商店发布。
前提条件
- 1. 一个 Capawesome Cloud 账户和组织。
- 一个 Capacitor 6、7 或 8 应用。
- 已安装 Node.js 和 npm。
- 对于原生构建:应用必须位于 Git 仓库中(GitHub、GitLab、Bitbucket 或 Azure DevOps)。
- 对于Apple App Store 发布:有效的 Apple Developer Program 会员资格以及在 App Store Connect 中创建的应用。
- 对于Google Play Store 发布:一个 Google Play Developer 账户以及在 Google Play Console 中创建的应用,且至少已手动上传一个版本。
通用规则
首次运行任何 @capawesome/cli 命令前,请使用 --help 标志运行该命令以查看所有可用选项。
操作步骤
步骤 1:向 Capawesome Cloud 进行身份验证
bash
npx @capawesome/cli login
对于 CI/CD,请使用基于令牌的身份验证:
bash
npx @capawesome/cli login --token
步骤 2:在 Capawesome Cloud 中创建应用
如果用户已有应用 ID,请跳过此步骤。
bash
npx @capawesome/cli apps:create
CLI 会提示输入组织名称和应用名称,然后输出应用 ID(UUID)。请保存此 ID 以供后续步骤使用。
步骤 3:确定所需功能
询问用户要设置哪些 Capawesome Cloud 功能:
- 1. 原生构建 — 在云端构建 iOS 和 Android 应用。
- 实时更新 — 向已部署的应用推送 OTA 网页更新。
- 应用商店发布 — 自动提交到 Apple App Store 或 Google Play Store。
用户可以选择一个或多个功能。请继续执行以下相应部分。
原生构建
请阅读 references/native-builds.md 了解完整的原生构建设置和使用流程。内容包括:
- - 连接 Git 仓库
- 上传签名证书(Android 密钥库、iOS .p12 + 配置文件)
- 配置环境和密钥
- 配置构建设置(单体仓库、自定义构建命令)
- 触发构建
- 监控和下载构建产物
- 使用 Trapeze 配置原生配置覆盖
- 设置 CI/CD 流水线
实时更新
请阅读 references/live-updates.md 了解完整的实时更新设置和使用流程。内容包括:
- - 安装 @capawesome/capacitor-live-update 插件
- 在 Capacitor 配置中配置插件
- 添加回滚保护
- 添加更新逻辑(始终最新、手动同步、强制更新)
- 配置 iOS 隐私清单
- 配置版本处理(版本化渠道、版本化包)
- 测试设置
应用商店发布
请阅读 references/app-store-publishing.md 了解完整的应用商店发布设置和使用流程。内容包括:
- - 创建 Apple App Store 目标(API 密钥或 Apple ID 身份验证)
- 创建 Google Play Store 目标
- 将构建部署到目标
- 一步完成构建和部署
错误处理
原生构建
- - invalid source release: 21 → 将 JAVAVERSION 环境变量设置为 17 或 21。请阅读 references/build-troubleshooting.md。
- JavaScript heap out of memory → 将 NODEOPTIONS 环境变量设置为 --max-old-space-size=4096。请阅读 references/build-troubleshooting.md。
- 身份验证错误 → 重新运行 npx @capawesome/cli login。对于 CI/CD,请验证令牌。
- 缺少签名证书 → 通过 apps:certificates:create 上传。请阅读 references/certificates-android.md 或 references/certificates-ios.md。
- 配置文件过期 → 在 Apple Developer Portal 中重新生成并重新上传。请阅读 references/certificates-ios.md。
- Web 构建步骤失败 → 确保 package.json 中包含 capawesome:build 或 build 脚本。请阅读 references/build-configuration.md。
实时更新
- - npx cap sync 失败 → 验证插件版本与 package.json 中的 Capacitor 版本匹配。
- 包未应用 → 确保在 readyTimeout 过期前调用了 LiveUpdate.ready()。
- 重启后应用恢复为默认包 → 可能未调用 ready()。请在应用初始化早期添加。
- 上传身份验证错误 → 重新运行 npx @capawesome/cli login。
- 使用 autoUpdateStrategy: background 时未检测到更新 → 仅当上次检查超过 15 分钟时才会检查更新。请强制关闭并重启。
- 请阅读 references/live-update-plugin-api.md 了解完整的 SDK API 参考。
- 请阅读 references/live-update-faq.md 了解合规性、计费和限制。
应用商店发布
- - 身份验证错误 → 重新运行 npx @capawesome/cli login。
- 目标创建失败 → 验证凭据。请阅读 references/apple-app-store-credentials.md 或 references/google-play-store-credentials.md。
- iOS 构建未出现在 TestFlight 中 → 构建处理可能需要时间。常见原因:构建号未递增、Info.plist 中缺少隐私描述、权限不足。
- Google Play 部署失败 → 确保已手动上传第一个版本。验证服务账户具有发布权限。
- 部署超时 → 使用 --detached 标志并通过 apps:deployments:logs 检查日志。
- apps:deployments:create 失败并显示未找到构建 → 确保构建已成功完成。
- 取消卡住的部署 → npx @capawesome/cli apps:deployments:cancel --app-id ID> --deployment-id ID>。
相关技能
- - capacitor-app-development — 用于通用 Capacitor 开发主题、CI/CD 模式和故障排除。
- capawesome-cli — 用于完整的 Capawesome CLI 命令参考、项目配置和 CI/CD 集成详情。
- capacitor-plugins — 用于安装和配置 Capacitor 插件,包括 @capawesome/capacitor-live-update 插件。
- ionic-appflow-migration — 用于将现有 Ionic Appflow 项目迁移到 Capawesome Cloud。
- capacitor-in-app-purchases — 用于在发布到应用商店前设置应用内购买和订阅。