更新你的 Capacitor app 的开发从未如此简单。 通过结合 npm 脚本和 OTA (Over-The-Air) 更新,您可以自动部署、节省时间并确保您的用户始终拥有最新版本 - 无需等待应用商店批准。
您将学习以下内容:
- 如何设置 npm 脚本进行 OTA 更新。
- 将更新集成到 CI/CD pipeline 中以实现自动化。
- 管理应用版本、安全性和测试更新。
- 为什么 __CAPGO_KEEP_0__ 是管理 OTA 更新的可靠平台。 Capgo 使用一条命令自动更新。
使用加密安全地部署更新。
- app has never been easier.
- By combining Over-The-Air (OTA) updates with __CAPGO_KEEP_0__ scripts, you can automate deployments, save time, and ensure your users always have the latest version - without waiting for app store approvals.
- 整合更新到工作流程中,如 GitHub 动作.
- 使用工具如 Capgo 可以节省时间,更新时间小于 500ms。
快速设置示例:
- 安装工具:
npm install @capgo/cli --save-dev - 在
capacitor.config.json. - 添加 npm 脚本,如
deploy:production以简化部署。
借助平台如 Capgo 提供快速更新(24 小时内 95% 用户采用)和合理价格,管理 OTA 更新从未如此高效。
npm 脚本设置 OTA 更新
以下是如何配置 npm 脚本来管理 Capacitor OTA 更新 有效地。这涉及安装必要的包、设置配置和创建部署脚本。
安装必需的包
首先,安装所需的包。使用 Capgo CLI 工具简化了此过程,内置命令:
npm install @capgo/cli --save-dev
npm install @capacitor/cli --save-dev
然后,使用以下命令初始化OTA配置:
npx @capgo/cli init
配置OTA更新
更新您的 capacitor.config.json 文件以准备应用程序进行OTA更新:
{
"appId": "com.your.app",
"appName": "Your App",
"plugins": {
"CapacitorUpdates": {
"autoUpdate": true,
"updateUrl": "https://api.capgo.app/updates",
"statsUrl": "https://api.capgo.app/stats"
}
}
}
此配置确保您的应用程序可以自动获取更新并报告统计数据。
创建部署脚本
将这些npm脚本添加到您的 package.json 用于简化构建和部署流程的文件:
{
"scripts": {
"build:web": "npm run build",
"build:update": "npx @capgo/cli build",
"deploy:update": "npx @capgo/cli upload",
"deploy:production": "npm run build:web && npm run build:update && npm run deploy:update"
}
}
build:web: 构建 Web 资产,通常在开发和部署期间使用。build:update: 为 OTA 更新准备更新包。deploy:update: 将更新包上传到 Capgo。deploy:production: 完全处理构建和部署工作流程,适合生产发布。
设置环境变量
为了完成设置,定义这些环境变量:
CAPGO_TOKEN=your_api_token
CAPGO_APP_ID=your_app_id
兼容性和可靠性
的 Capgo CLI 支持 Capacitor 8,确保它与最新版本一起工作,同时保持可靠的更新功能。
| 脚本命令 | 目的 | 何时使用 |
|---|---|---|
| build:web | 构建 web 资产 | 在开发和部署期间 |
| build:update | 准备 OTA 更新包 | 在每次 OTA 更新之前 |
| deploy:update | 上传更新到 Capgo | 当更新准备好推送时 |
| deploy:production | 处理完整工作流 | 用于生产发布 |
添加 npm 脚本到 CI/CD
将 npm 脚本集成到 CI/CD pipeline 中可以简化 Capacitor 应用的 OTA 更新过程。以下是设置自动部署的指南。
CI/CD 构建设置
配置 CI/CD 环境并使用必要的变量和步骤:
environment:
CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
CAPGO_APP_ID: ${{ secrets.CAPGO_APP_ID }}
NODE_ENV: production
为了获得最佳性能,请在构建过程中包含缓存:
cache:
paths:
- node_modules/
- .npm/
- dist/
GitHub 动作 设置指南

为了自动化您的部署工作流程,请创建一个 .github/workflows/ota-deploy.yml 包含以下配置的文件:
name: Deploy OTA Update
on:
push:
branches: [ main ]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: '24'
- name: Install dependencies
run: npm ci
- name: Run deployment
run: npm run deploy:production
env:
CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
CAPGO_APP_ID: ${{ secrets.CAPGO_APP_ID }}
此设置确保您的应用在推送到 main 分支时自动部署。
修复和恢复
为了应对潜在的更新失败,需要在CI/CD管道中包含恢复机制。这些功能可以帮助维持应用程序的稳定性:
| 恢复功能 | 实现 | 目的 |
|---|---|---|
| 版本回滚 | npm run revert:update | 恢复到最后一个稳定版本 |
| 健康检查 | npm run verify:update | 确保更新正常工作 |
| 自动重试 | maxRetries: 3 在配置中 | 尝试多次更新 |
您可以通过自动化错误管理来增强您的部署脚本。例如:
npm run deploy:production || npm run revert:update
此脚本确保如果部署失败,系统将恢复到上一个稳定版本。此外,您的CI/CD管道可以通过您的首选平台发送状态报告并触发通知。
OTA更新管理提示
有效地管理OTA更新涉及密切关注版本控制、严格的测试和强大的安全协议。以下是如何使用npm脚本来简化更新的方法:
版本管理
语义版本管理是管理应用程序更新的简单方法。以下是示例配置:
{
"version": "2.5.0",
"scripts": {
"update:major": "npm version major && npm run deploy:update",
"update:minor": "npm version minor && npm run deploy:update",
"update:patch": "npm version patch && npm run deploy:update"
}
}
使用生产、beta、alpha和hotfix等独立通道可以实现针对性的发布。这些策略使得测试更新和确保顺利部署变得更加容易。
更新测试步骤
自动化测试对于早期捕捉问题至关重要。使用npm脚本可以简化测试过程:
npm run test:update -- --channel=beta
npm run verify:deployment
npm run monitor:metrics
通过不同通道的阶段性测试可以在问题到达所有用户之前识别问题。自动回滚程序是另一个维持应用程序稳定性的安全网。
更新安全措施
在OTA更新中,安全性至关重要。以下是需要采取的关键措施:
| 安全功能 | 实施 | 目的 |
|---|---|---|
| 端到端加密 | 由 Capgo 提供 | 防止数据泄露 |
| 更新签名 | 包验证 | 确认更新的真实性 |
| 访问控制 | 基于角色的权限 | 限制团队访问 |
“Capgo说:‘只有真正的端到端加密,其他人只是签署更新’” [1]
为了确保更新是安全的,请配置npm脚本,验证所有内容在部署之前:
{
"scripts": {
"predeploy": "npm run security:check",
"deploy": "capgo upload --encrypt",
"security:check": "npm audit && npm run validate:bundle"
}
}
此外,还应强制执行通道特定的安全策略,并使用基于角色的权限控制谁可以分发更新。这会为您的部署过程添加一个额外的保护层。
OTA更新平台选项
选择合适的OTA更新平台对于有效地将npm脚本集成到您的工作流程中至关重要。优先考虑性能、安全性和与现有工具兼容性的因素。以下是Capgo和其他市场选项的详细比较,以帮助您做出明智的决定。
Capgo 功能

Capgo专门设计用于Capacitor OTA更新,平均更新速度为434毫秒,实现了95%的用户更新率 [1]它提供了与npm脚本的无缝集成,如下例所示:
{
"scripts": {
"deploy:production": "capgo upload --channel production",
"deploy:beta": "capgo upload --channel beta --encrypt",
"rollback": "capgo revert --channel production"
}
}
Capgo确保安全更新,提供端到端加密,并允许通过其通道系统进行战略性部署。它已在750个生产应用中成功交付了2,350万次更新,证明了其可扩展性和可靠性 [1].
平台比较
使用 npm 脚本时,需要根据加密、速度和 CI/CD 集成来评估平台。以下是功能的快速比较:
| 功能 | 实现细节 | 更新成功率 |
|---|---|---|
| 端到端加密 | 支持全加密 | 全球 82% [1] |
| 更新速度 | 114 ms,5 MB 打包 | 全球 CDN 交付 |
| CI/CD 集成 | GitHub Actions,GitLab CI | 自定义工作流 |
“我们实践敏捷开发,@Capgo 在持续为用户交付方面至关重要!”
– Rodrigo Mantica [1]
OTA更新市场发生了重大变化,尤其是在 Microsoft Code Push 在 2024 年关闭后, Appflow 将于 2026 年关闭。Simon Flack 分享了他对这些变化的看法:
“我们目前正在尝试 @Capgo,因为 Appcenter 停止对混合应用程序的实时更新支持,而 @AppFlow 的费用太高了。” [1]
成本是团队的另一个重要考虑因素。Capgo 计划从每月 12 美元开始,包括 OTA 更新和约 15 个本机构建/月;额外的构建分钟通过信用额度按分钟计费。这个价格比企业级别的替代方案的 6,000 美元的年度费用要低得多 [1].
在将 npm 脚本集成到您的部署工作流中时,请考虑以下因素:
- API 响应性 为了smooth的脚本执行
- 频道管理 为目标更新
- CI/CD管道集成 为流程的简化
- 强大的安全措施 确保遵守
- 可负担性 为了不破坏预算的扩展
Capgo的能力处理复杂npm脚本配置,同时保持高性能,使其成为OTA强大的竞争者 更新管理.
结论
Main Points Review
使用 npm 脚本简化了管理 Capacitor OTA 更新的过程。将这些脚本集成到 CI/CD pipeline 中有助于自动化部署,同时确保安全性并维持性能水平。
以下是重点关注的领域:
- 自动化部署:无需人工干预即可处理版本和部署。
- 安全措施:确保更新以端到端加密的方式安全地分发。
- 性能监控:跟踪更新的传递速度和成功率。
这些功能突出了 Capgo 在管理 OTA 更新方面的可靠性。
Capgo 优势
微软 CodePush 在 2024 年关闭后,OTA 更新的格局已经发生了变化。 Capgo 已经成为了可靠的解决方案,成功地将 2,350 万次更新推送到 750 个生产应用中 [1].
“我们实践敏捷开发,@Capgo 在为用户持续交付方面至关重要!” – Rodrigo Mantica [1]
Capgo 的性能指标自有说服力:
| 性能指标 | 成就 |
|---|---|
| 平均 API 响应时间 | 434 ms 全球 |
| 包下载速度 | 114 ms 下载 5 MB |
| 更新成功率 | 全球 82% |
从每月 12 美元起,支持 OTA 更新和约 15 个本机构建/月 - 并通过信用额度按分钟计费额外构建分钟 - Capgo 提供了一个安全、可靠且成本效益的选项来管理 OTA 更新和本机构建自动化 [1].