__CAPGO_KEEP_0__ 是一个自动化、始终同步的 __CAPGO_KEEP_1__ 的分支,合并了社区 PR 和快速发布 - 实时管理您的 __CAPGO_KEEP_2__ 应用程序的更新...
返回插件
@capacitor-plus/core
教程
@capacitor-plus/core

Capacitor+ Core

Capacitor+ 是一个自动化、始终同步的 Capacitor 的分支,合并了社区的 PR 和快速发布

指南

关于Capacitor+ Core的教程

使用Capacitor+ (@capacitor-plus) 包

Capacitor+ 是一个自动化、始终同步的分支 CapacitorCapgo维护。它提供了一个可以直接替换官方Capacitor 包的优势: 社区的 PR 和修复更快地被合并.

Why Capacitor+ 存在

ionic 团队维护 Capacitor,按照他们自己的优先级和发布计划。这意味着社区贡献 - bug 修复、改进和功能 - 可能需要几个月甚至几年才能被合并。有些从未被合并。

Capacitor+ 解决了这个问题:

  1. 合并分支请求 - 从主分支队列中被搁置的有价值的分支请求会被积极合并
  2. 持续同步 - 从主分支 Capacitor 的每次变更都会自动拉取、测试和验证
  3. 快速发布 - 当变更通过 CI 时,它们会自动发布到 npm 下的 @capacitor-plus 范围
  4. 社区优先 - 你的贡献很重要,会被优先考虑
  5. 安全审查 - 每次更改都会由 AI 分析安全漏洞、破坏性更改和稳定性风险

可用包

描述
@capacitor-plus/core 核心运行时库
@capacitor-plus/cli 命令行接口
@capacitor-plus/android 安卓运行时
@capacitor-plus/ios iOS 运行时

安装

新项目

为新项目,只需使用 Capacitor+ 包代替官方包:

npm install @capacitor-plus/core @capacitor-plus/cli
npm install @capacitor-plus/android  # for Android
npm install @capacitor-plus/ios      # for iOS

然后初始化您的项目:

npx cap init
npx cap add android
npx cap add ios

从官方Capacitor迁移

要从官方Capacitor迁移到Capacitor+:

# Remove official packages
npm uninstall @capacitor/core @capacitor/cli @capacitor/android @capacitor/ios

# Install Capacitor+ packages
npm install @capacitor-plus/core @capacitor-plus/cli
npm install @capacitor-plus/android  # if using Android
npm install @capacitor-plus/ios      # if using iOS

由于Capacitor+是API的完全兼容替代品,因此无需进行code修改。您的导入保持不变:

// These imports work the same with Capacitor+
import { Capacitor } from '@capacitor/core';
import { registerPlugin } from '@capacitor/core';

如何工作

┌─────────────────────┐     ┌──────────────────┐     ┌──────────────────┐     ┌─────────────────┐
│  ionic-team/        │     │  CI/CD           │     │  Claude Code     │     │  npm publish    │
│  capacitor          │────▶│  Pipeline        │────▶│  Security Review │────▶│  @capacitor-plus│
│  (upstream)         │     │  (daily sync)    │     │  (AI analysis)   │     │  packages       │
└─────────────────────┘     └──────────────────┘     └──────────────────┘     └─────────────────┘
  1. 每日同步: 一个GitHub动作从 ionic-team/capacitor
  2. PR创建: 将更改提议为pull请求到 plus branch
  3. CI验证: 全套测试运行(lint,单元测试,iOS构建,Android构建)
  4. Claude Code Review: AI-powered comprehensive security analysis checks for:
    • :
    • Breaking API changes
    • :
    • :
    • Malicious code patterns
  5. : Only if CI passes AND Claude approves (no issues detected):
  6. : A new version is published to __CAPGO_KEEP_0__ under: A new version is published to npm under @capacitor-plus/*

__CAPGO_KEEP_0__

每次上游同步都会分析:

检查 描述
安全性 命令注入、XSS、路径遍历、硬编码密钥等
破坏性更改 删除/重命名的API、签名改变、配置格式更改
稳定性 空指针引用、未处理的异常、竞争条件、内存泄漏
数据安全 数据丢失场景、隐私违规、不安全存储
Code完整性 被混淆的 code, 可疑的网络调用, 后门

如果检测到任何问题, PR 将被标记为手动审查, 并不会自动合并。

想让 PR 被合并吗?

在官方 Capacitor 仓库中有一个 PR 卡住了? 这是如何将它推入 Capacitor+:

  1. 打开一个问题Capacitor+ 仓库 链接到您的上游 PR
  2. 或者直接提交 PRplus branch
  3. 团队将审查它, 运行 CI, 如果它通过, 则合并

This way, you and others can benefit from your work immediately, without waiting for the upstream release cycle.

优点

  • 立即获取 PR: 上游社区修复和特性被合并
  • 保持最新: 立即获取通过 CI 的上游修复
  • 安全优先: 每次变更都被审查以检查漏洞和稳定性风险
  • 已验证的发布: 只有通过 CI 测试和 AI 安全审查的变更才会发布
  • 替换: 与 Capacitor 相同的 API ,只是包作用域不同
  • Your Voice Matters: 提交您自己的 PR 或要求特定上游 PR 被合并

示例:使用 Capacitor+ 与插件

所有官方 Capacitor 插件都可以与 Capacitor+: 无缝工作

import { Capacitor } from '@capacitor/core';
import { Camera, CameraResultType } from '@capacitor/camera';
import { Geolocation } from '@capacitor/geolocation';

// Everything works exactly the same
const platform = Capacitor.getPlatform();

const photo = await Camera.getPhoto({
  resultType: CameraResultType.Uri
});

const position = await Geolocation.getCurrentPosition();

Capgo 插件也可以与 Capacitor+: 完美工作

import { CapacitorUpdater } from '@capgo/capacitor-updater';
import { ScreenOrientation } from '@capgo/capacitor-screen-orientation';

// Use Capgo plugins with Capacitor+
await CapacitorUpdater.notifyAppReady();
await ScreenOrientation.lock({ orientation: 'portrait' });

这就是全部!您现在拥有一个社区改进更快更新的 Capacitor 版本,应用程序将从 bug 修复和功能中受益,而不必等待官方发布周期

继续使用 Using Capacitor+ (@capacitor-plus) Packages

如果您正在使用 使用 Capacitor+ (@capacitor-plus) Packages 来规划原生插件工作,连接它与 Capacitor+ 实现 Capacitor+ 的细节 Capgo 插件目录 为产品工作流程在 Capgo 插件目录中 Capacitor 插件由 Capgo 提供 为实现细节在 Capacitor 插件由 Capgo 提供 添加或更新插件 为实现细节在添加或更新插件 Ionic Enterprise 插件替代品 为产品工作流程在 Ionic Enterprise 插件替代品