跳过内容

CLI 入门指南

的Capgo CLI提供了一个交互式引导程序,用于为您的Capacitor应用程序设置实时更新。您将:

  1. ✅ 在Capgo中注册应用程序
  2. 🔌 安装和配置更新插件
  3. 🚀 部署您的第一个实时更新
  4. 📱 在设备上测试更新

预计时间: 10-20 分钟(根据您的互联网速度和构建时间而异)

开始引导流程

开始引导流程

使用您的 API 密钥运行引导命令:

终端窗口
npx @capgo/cli@latest init [APIKEY]

您将看到欢迎消息:

Capgo onboarding 🛫

引导流程中的发生

引导流程

您的 CLI 将指导您完成 13 个交互式步骤:

Setup Phase (Steps 1-6):

  • 检查您的开发环境(Xcode/Android Studio)
  • 将您的应用程序添加到 Capgo 并创建一个生产频道
  • 安装 @capgo/capacitor-updater 插件
  • 将所需的 code 注入到您的应用程序中
  • 可选:启用端到端加密
  • 选择测试平台(iOS 或 Android)

测试阶段 (Steps 7-12):

  • 构建应用程序并在设备/模拟器上运行
  • 进行可见的 code 变更(自动或手动)
  • 将更新的捆绑包上传到 Capgo
  • 实时看到设备上的更新

第 13 步:

  • 您的应用程序现在可以实时更新了! 🎉

13 步入门流程

13 步入门流程

第 1 步:检查先决条件

第 1 步:检查先决条件

The CLI checks your development environment to ensure you have the necessary tools installed.

检查的内容:

  • Xcode (仅限 macOS) - iOS 开发
  • Android SDK - for Android 开发

可能的结果:

找到两个环境:

✅ Xcode detected - iOS development ready
✅ Android SDK detected - Android development ready

⚠️ 未找到环境:

⚠️ Xcode not found
⚠️ Android SDK not found
❌ No development environment detected
📱 To develop mobile apps with Capacitor, you need:
• For iOS: Xcode (macOS only) - https://developer.apple.com/xcode/
• For Android: Android Studio - https://developer.android.com/studio

可能会问你的问题:

The CLI will log you into Capgo and add your app to your account.

(spinner) Running: npm @capgo/cli@latest login ***
Login Done ✅
❓ Add {appId} in Capgo?

如果您的应用程序 ID 已经被占用:

将建议替代方案:CLI

❌ App ID "com.example.app" is already taken
💡 Here are some suggestions:
1. com.example.app2
2. com.example.app3
3. com.example.app.new
4. com.example.app.app
❓ What would you like to do?

您可以选择建议的替代方案或输入自定义应用程序 ID。

步骤 3:创建生产渠道

步骤 3:创建生产渠道

渠道允许您管理不同更新流程的应用程序。

❓ Create default channel production for {appId} in Capgo?

如果你选择是:

(spinner) Running: npm @capgo/cli@latest channel add production {appId} --default
Channel add Done ✅ (or "Channel already added ✅")

将创建一个生产频道并设置为默认频道。这是大多数用户的推荐选项。

如果你选择否:

If you change your mind, run it for yourself with: "npm @capgo/cli@latest channel add production {appId} --default"

您需要手动创建和配置频道后期。 alternatively,您可以:

  • 在您的 capacitor.config.ts 文件
  • 使用JavaScript setChannel() 方法动态设置频道
  • 稍后从Capgo web控制台配置频道

步骤 4:安装更新插件

标题:步骤 4:安装更新插件

CLI 将安装与您的CLI版本兼容的 @capgo/capacitor-updater plugin compatible with your Capacitor version.

❓ Automatic Install "@capgo/capacitor-updater" dependency in {appId}?

步骤 4:安装更新插件

  • Capacitor 5: 安装 @capgo/capacitor-updater v5
  • Capacitor 6: 安装 @capgo/capacitor-updater v6
  • Capacitor 7: 安装 @capgo/capacitor-updater v7
  • Capacitor 8+: 安装最新版本

即时更新选项:

安装后,您将被询问:

❓ Do you want to set instant updates in {appId}?
Read more: https://capgo.app/docs/live-updates/update-behavior/#applying-updates-immediately

如果您选择是:

  • 更新将配置为在应用程序后台和重新打开时立即应用
  • directUpdate: 'always'autoSplashscreen: true 将被添加到您的配置中
  • 您的 capacitor.config.ts 将自动更新
  • Delta 更新 将自动启用 - 这样只会发送更新期间发生的文件变化,而不是完整的捆绑包,这样更新速度会大大提高

如果您选择否:

  • 更新将使用标准行为(在后台下载,下次重启时应用)
  • 您可以随时通过修改您的 capacitor.config.ts

The CLI will automatically inject the required code into your main application file.

❓ Automatic Add "CapacitorUpdater.notifyAppReady()" code and import in {appId}?

What gets added:

import { CapacitorUpdater } from '@capgo/capacitor-updater'
CapacitorUpdater.notifyAppReady()

项目类型检测:

  • Nuxt.js: 创建 plugins/capacitorUpdater.client.ts
  • 其他框架: 添加到主入口文件

第 6 步:设置加密(可选)

第 6 步:设置加密(可选)

端到端加密为您的更新添加了额外的安全层。

🔐 End-to-end encryption
✅ Use this for: Banking, healthcare, or apps with legal encryption requirements
⚠️ Note: Makes debugging harder - skip if you don't need it
❓ Enable end-to-end encryption for {appId} updates?

如果您启用加密,CLI将:

  1. 生成加密密钥
  2. 提供同步Capacitor配置的选项

复制到剪贴板

📱 Platform selection for onboarding
This is just for testing during onboarding - your app will work on all platforms
❓ Which platform do you want to test with during this onboarding?
Options:
- iOS
- Android

步骤 8: 构建您的项目

步骤 8: 构建您的项目

CLI 将构建您的应用并同步它与 Capacitor。

❓ Automatic build {appId} with "npm run build"?

发生什么:

  1. 检测您的项目类型
  2. 运行您的构建脚本
  3. 执行 npx cap sync {platform}

如果缺少构建脚本:

您将被询问是否要跳过构建或为您的项目添加一个构建脚本 package.json.

步骤 9: 在设备上运行

步骤 9: 在设备上运行

在设备或模拟器上测试您的应用的初始版本。

❓ Run {appId} on {PLATFORM} device now to test the initial version?

如果您选择 :

(spinner) Running: npx cap run {platform}
(device picker appears)
App started ✅
📱 Your app should now be running on your {platform} device with Capgo integrated
🔄 This is your baseline version - we'll create an update next

第 10 步:进行测试更改

第 10 步:进行测试更改

现在是时候测试 Capgo 的更新系统了,通过进行一个可见的更改。

🎯 Now let's test Capgo by making a visible change and deploying an update!
❓ How would you like to test the update?
Options:
- Auto: Let Capgo CLI make a visible change for you
- Manual: I'll make changes myself

自动模式: The CLI will automatically modify your files to add a visible test banner or change.

手动模式: 您可以自行修改(例如修改文本、颜色或添加元素)。

版本管理:

❓ How do you want to handle the version for this update?
Options:
- Auto: Bump patch version ({currentVersion} → {nextVersion})
- Manual: I'll provide the version number

使用修改内容构建:

❓ Build {appId} with changes before uploading?

步骤 11:上传打包文件

步骤 11:上传打包文件

将您的更新后的应用程序打包文件上传到 Capgo。

❓ Upload the updated {appId} bundle (v{version}) to Capgo?

The CLI 运行:

终端窗口
npx @capgo/cli@latest bundle upload

如果直接更新启用,则显示 delta 更新提示:

💡 Direct Update (instant updates) is enabled in your config
Delta updates send only changed files instead of the full bundle
❓ Enable delta updates for this upload? (Recommended with Direct Update)

成功:

✅ Update v{version} uploaded successfully!
🎉 Your updated bundle is now available on Capgo

步骤 12:在设备上测试更新

标题:步骤 12:在设备上测试更新

看看更新的效果!

🧪 Time to test the Capgo update system!
📱 Go to your device where the app is running

实时更新:

🔄 IMPORTANT: Background your app (swipe up/press home button) and then reopen it
⏱️ The update should be downloaded and applied automatically

标准更新:

📱 With standard updates, you will need to:
1. Background the app (swipe up/press home button) to start download
2. Wait a few seconds for download to complete
3. Background and foreground again to see the update

监控日志:

❓ Monitor Capgo logs to verify the update worked?

如果您选择 您将看到设备的实时日志,显示更新过程。

第 13 步:完成

标题:第 13 步:完成
Welcome onboard ✈️!

Congratulations! You’ve successfully set up Capgo live updates for your app.

标题:您已经完成了什么

复制到剪贴板

完成入门后,你有:

✅ 应用程序已注册

您的应用程序已在Capgo中注册,生产频道

✅ 插件已安装

Capacitor更新器插件已安装并配置

✅ Code已集成

已将code集成到您的应用程序中

✅ 更新已测试

您已成功部署并接收到实时更新

对于后续更新,请使用:

终端窗口
npm run build
npx @capgo/cli@latest bundle upload --channel=production

更多部署选项,请参见 部署实时更新.

如果您退出入门过程,可以随时恢复:

终端窗口
npx @capgo/cli@latest init [APIKEY]

您会看到:

You have already got to the step {stepNumber}/13 in the previous session
❓ Would you like to continue from where you left off?

故障排除

故障排除

没有开发环境

没有开发环境

问题: 未检测到 Xcode 或 Android SDK。

解决方案:

App ID 已经被占用

标题:App ID 已经被占用

问题: 您的应用 ID 已经注册过了。

解决方案: 选择一个建议的替代方案或在反向域名表示法中输入一个自定义应用 ID。

构建脚本丢失

标题:构建脚本丢失

问题: 未找到构建脚本在 package.json.

解决方案: 在你的 package.json:

{
"scripts": {
"build": "your-build-command"
}
}

问题: CLI无法自动注入code

解决方案: 手动将code添加到你的主文件中:

import { CapacitorUpdater } from '@capgo/capacitor-updater'
CapacitorUpdater.notifyAppReady()

Capacitor 版本过低

标题:Capacitor 版本过低

问题: 您的 Capacitor 版本低于 v5。

解决方案: 升级 Capacitor 至 v5 或更高版本:

现在您已经完成了入门,探索这些主题:

获取帮助

获取帮助

如果您在入门过程中遇到问题: