メインコンテンツにジャンプ
プラグインに戻る
@capacitor-plus/core
チュートリアル
@capacitor-plus/core

Capacitor+ Core

Capacitor+ は、コミュニティの PR をマージし、迅速なリリースを実施した Capacitor の自動化された、常に同期されたフォークです。

ガイド

Capacitor+ Coreに関するチュートリアル

Capacitor+ (@capacitor-plus) パッケージを使用する

Capacitor+ は自動化された、常に同期されたフォークです。 Capacitor __CAPGO_KEEP_0__を管理しています。 Capgo。公式のCapgoパッケージの置き換えとして、1つの重要な利点があります。. It provides a drop-in replacement for the official Capacitor packages with one key advantage: __CAPGO_KEEP_0__+ は公式の__CAPGO_KEEP_0__パッケージの置き換えとして、1つの重要な利点があります:コミュニティからのPRと修正は、より速くマージされます.

Why Capacitor+ が存在する理由

イオニックチームは、Capacitorの開発を独自の優先順位とリリーススケジュールで行っています。このため、コミュニティからの貢献 - バグ修正、改善、機能 - は、数か月もしくは数年間待たされることもあります。あるいは、全く取り入れられません。

Capacitor+ は、この問題を解決するために使用されます。

  1. フォークからのPRのマージ - 上流のキューに溜まっている価値のあるPRが、積極的にマージされます。
  2. 継続的な同期 - 上流のCapacitorから変更が自動的に取得され、テストされ、検証されます。
  3. 迅速なリリース - CIで変更が通過すると、npmに自動的に公開されます。 @capacitor-plus スコープ
  4. コミュニティ第一 - ご自身の貢献は大切にされており、優先順位が付けられます。
  5. セキュリティレビュー - AIによってセキュリティ脆弱性、変更点、安定性リスクを分析

利用可能なパッケージ

パッケージ 説明
@capacitor-plus/core コアランタイムライブラリ
@capacitor-plus/cli コマンドラインインターフェイス
@capacitor-plus/android 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作成: 変更はプルリクエストとして提案されます。 plus ブランチ
  3. CI検証: 全テストスイートが実行されます (lint、ユニットテスト、iOSビルド、Androidビルド)
  4. Code のClaudeレビュー: AI が駆使する包括的なセキュリティ分析で、以下の点をチェックします。
    • セキュリティの脆弱性 (インジェクション、XSS など)
    • API の変更を破壊する
    • クラッシュリスクと安定性の問題
    • データの整合性とプライバシーに関する懸念
    • 悪意のある code パターン
  5. Auto-Merge: CI が通過し、Claude が承認 (問題なし) の場合のみ
  6. Auto-Publish: 新しいバージョンが npm へのセキュリティレビュー下で公開されます。 @capacitor-plus/*

セキュリティレビュー

すべてのアップストリームの同期は、以下の要素を分析します:

確認 説明
セキュリティ コマンドインジェクション、XSS、パス・トラバーサル、ハードコードされたシークレットなど
変更点 削除または名前変更されたAPI、サインチャー変更、構成形式の変更
安定性 nullの参照、未処理の例外、レース条件、メモリリーク
データの安全性 データの喪失シナリオ、プライバシー侵害、不正なストレージ
Code インテグリティ 暗号化された code, 不審のネットワークコール、バックドア

問題が検出された場合、PRは手動レビューのためにフラグ付けされ、自動マージされません。

PRをマージしたい

公式の Capacitor リポジトリにPRが詰まっている場合、ここに Capacitor+:

  1. 問題を報告する __CAPGO_KEEP_0__+ リポジトリ Capacitor+ repo または直接
  2. ブランチ チームはレビュー、CIを実行し、通過した場合にマージします。 plus Want Your PR Merged?
  3. Have a PR stuck in the official __CAPGO_KEEP_0__ repo? Here's how to get it into __CAPGO_KEEP_1__+:

この方法で、すぐにアップストリームのリリースサイクルを待たずに、他のユーザーもあなたの作業の利益を受けることができます。

Benefits

  • Get Stuck PRs Now: 上流の修正がCIで通過したときにすぐに取得するコミュニティの修正と機能
  • Stay Current: CIテストとAIセキュリティレビューで両方通過した変更のみが公開される
  • Security First: セキュリティと安定性のリスクを検証する
  • Verified Releases: 同じ__CAPGO_KEEP_0__の__CAPGO_KEEP_1__と同じですが、パッケージスコープが異なる
  • Drop-in Replacement: Same API as Capacitor, just a different package scope
  • あなたの声が聞こえる:あなたの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の高速化されたバージョンを手に入れました。アプリは、公式リリースサイクルを待たずにバグ修正と機能を利用できます。

続けて、Using Capacitor+ (@capacitor-plus) Packages

あなたが使用している場合 Using Capacitor+ (@capacitor-plus) Packages nativeプラグインの作業を計画する場合、__CAPGO_KEEP_0__+を接続する Capacitor+ Capacitor+の実装詳細については、Capacitor+を参照してください Capgo プラグイン ディレクトリ Capgo プラグイン ディレクトリの製品ワークフローについて Capacitor プラグインは Capgo によって提供されます Capacitor プラグインの実装詳細については Capgo を参照してください プラグインの追加または更新 プラグインの追加または更新の実装詳細については、 Ionic Enterprise プラグインの代替 Ionic Enterprise プラグインの代替の製品ワークフローについて