Skip to main content
プラグインに戻る
@capacitor-plus/core
チュートリアル
@capacitor-plus/core

@Capacitor+ Core

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

ガイド

Tutorial on Capacitor+ Core

Using Capacitor+ (@capacitor-plus) Packages

Capacitor+ is an automated, always-synced fork of Capacitor メンテナンス Capgo. これは公式の Capacitor パッケージの置き換えです。ただし、1つの大きな利点があります: コミュニティからのPRと修正がより速くマージされる.

Capacitor+の理由

CapacitorはIonicチームが独自の優先順位とリリーススケジュールで管理しています。これは、コミュニティの貢献 - バグ修正、改善、機能 - が数か月もしくは数年間待たされる場合があります。あるいは、全く取り込まれません。

Capacitor+はこの問題を解決するために

  1. フォークからのPRのマージ - 上流キューに溜まっている価値のあるPRが積極的にマージされる
  2. 連続的な同期 - 上流のCapacitorから変更が自動的に取得され、テストされ、検証される
  3. 迅速なリリース - 変更がCIを通過すると、npmのスコープ下で自動的に公開される @capacitor-plus scope
  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から__CAPGO_KEEP_1__+への移行

公式の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';

Capgo Builder / ネイティブ クラウド ビルド製品ページのセクションまたはページヘッダー。ロール: セクションまたはページヘッダー。メッセージキー `native_build_how_it_works_title` (ネイティブ ビルドのしくみのタイトル)。 | ホームページの問題/解決セクション。ロール: 短いUIラベルまたはナビゲーションアイテム。ページ `premium-support.astro` で見られる。メッセージキー `ps_how_it_works` (PSのしくみ)。 | ライブアップデート製品ページのセクションまたはページヘッダー。ロール: セクションまたはページヘッダー。ページ `live-update.astro` で見られる。メッセージキー `live_update_how_it_works_title` (ライブアップデートのしくみのタイトル)。

┌─────────────────────┐     ┌──────────────────┐     ┌──────────────────┐     ┌─────────────────┐
│  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 レビュー: AI が駆使する包括的セキュリティ分析が実行され、以下の点をチェックします。
    • セキュリティ脆弱性 (インジェクション、XSS など)
    • API の破壊的な変更
    • クラッシュリスクと安定性の問題
    • データの整合性とプライバシーに関する懸念
    • 悪意のある code パターン
  5. Auto-Merge: CI が通過し、クラウドが承認した場合 (問題なし)
  6. Auto-Publish: npm への新しいバージョンが公開されました。 @capacitor-plus/*

セキュリティレビュー

アップストリームの各Syncは次の要素を分析します:

チェック 説明
セキュリティ コンテキスト: Enterprise製品/価格設定ページ。役割: UIラベル。ページ: enterprise.astro。メッセージキー: `enterprise_hero_security_label` (Enterprise Hero Security Label)。
コマンドインジェクション、XSS、パストラバーサル、ハードコードされたシークレットなど。 変更点
削除/名前変更されたAPI、サインチャージャー変更、構成フォーマット変更 安定性
コンテキスト: Enterprise製品/価格設定ページ。役割: UIラベル。ページ: enterprise.astro。メッセージキー: `enterprise_hero_stability_label` (Enterprise Hero Stability Label)。 データ喪失シナリオ、プライバシー侵害、不正確なストレージ
Codeの完全性 codeが隠蔽され、疑わしいネットワークコール、バックドア

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

あなたのPRをマージしたい?

Capacitorリポジトリの公式リポジトリにPRが詰まっている場合、Capacitor+にどうやって入れるかこちらをご覧ください。

  1. 問題を報告する 公式 Capacitor+リポジトリ アップストリームのPRへのリンク
  2. または直接__CAPGO_KEEP_1__+リポジトリにPRを提出する PR plus ブランチ
  3. チームはレビューし、CIを実行し、通過した場合にマージします

このようにすると、すぐにアップストリームのリリースサイクルを待たずに、他のユーザーもあなたの作業から利益を得ることができます

利点

  • コンテキスト: Capgoのソリューションマーケティングページ。役割: UIラベル。表示される場所: CordovaからCapacitorへのソリューションページ。メッセージキー `solutions_cordova_to_capacitor_benefits_label` (Solutions Cordova To Capacitor Benefits Label)。現在のプルリクエストを取得
  • : アップストリームで待っているコミュニティの修正と機能がマージされます最新の情報を取得
  • : アップストリームの修正がCIを通過したときにすぐに取得できますセキュリティが第一
  • : すべての変更は脆弱性と安定性のリスクを検証します検証済みのリリースのみを公開します
  • ドロップイン置き換え: 同じ API と Capacitor、ただしパッケージスコープが異なる
  • あなたの声が聞こえる: 自分の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 のコミュニティ改善がマージされる速度が速くなり、 Capacitor のより高速なバージョンを取得し、バグ修正と機能を待たずにアプリが利益を受けることができます。

続けて、Using Capacitor+ (@capacitor-plus) Packages を使用する

あなたが使用している Using Capacitor+ (@capacitor-plus) Packages を使用して、ネイティブプラグインの作業を計画する場合、接続する Capacitor+ Capacitor+の実装詳細について Capgo プラグイン ディレクトリ Capgo プラグイン ディレクトリの製品ワークフローについて Capacitor プラグインズ by Capgo Capacitor プラグインズ by Capgoの実装詳細について プラグインの追加または更新 プラグインの追加または更新の実装詳細について、 イオニック エンタープライズ プラグインの代替 イオニック エンタープライズ プラグインの代替の製品ワークフローについて