Saltare al contenuto principale
Torna ai plugin
@capacitor-plus/core
Tutorial
@capacitor-plus/core

Capacitor+ Core

Capacitor+ è un fork automatizzato, sempre sincronizzato di Capacitor con PR della community congiunti e rilasci rapidi

Guida

Tutorial su Capacitor+ Core

Utilizzo di Capacitor+ (@capacitor-plus) Pacchetti

Capacitor+ è un fork automatizzato e sempre sincronizzato di Capacitor mantenuto da Capgo. Offre una sostituzione a caduta di mano per i pacchetti ufficiali Capacitor con un unico vantaggio: i PR e le correzioni della community vengono mergeati più velocemente.

Why Capacitor+ Esiste

La squadra Ionic mantiene Capacitor con le proprie priorità e calendario di rilascio. Ciò significa che le contribuzioni della community - correzioni di bug, miglioramenti e funzionalità - possono attendere mesi o anche anni per essere incorporate. Alcune non vengono mai integrate.

Capacitor+ risolve questo problema:

  1. Unione di PR da Fork - I preziosi PR bloccati nella coda upstream vengono uniti attivamente
  2. Sincronizzazione Continua - Ogni modifica da upstream Capacitor viene automaticamente recuperata, testata e verificata
  3. Rilasci Rapidi - Quando le modifiche superano la CI, vengono automaticamente pubblicate su npm sotto lo @capacitor-plus Scoletta
  4. Prima della Comunità - Le tue contribuzioni contano e vengono priorizzate
  5. Verificato per la Sicurezza - Ogni modifica viene analizzata dall'IA per vulnerabilità di sicurezza, cambiamenti di rotta e rischi di stabilità

Pacchetti Disponibili

Pacchetto Descrizione
@capacitor-plus/core Libreria runtime di base
@capacitor-plus/cli Interfaccia a riga di comando
@capacitor-plus/android Runtime per Android
@capacitor-plus/ios Runtime per iOS

Installazione

Nuovo Progetto

Per un nuovo progetto, utilizza semplicemente i pacchetti Capacitor+ al posto di quelli ufficiali:

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

Inizializza quindi il tuo progetto:

npx cap init
npx cap add android
npx cap add ios

Migrating from Official Capacitor

To migrate an existing project from official Capacitor to 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

Since Capacitor+ is a drop-in replacement with the same API, no code changes are required. Your imports remain the same:

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

Come Funziona

┌─────────────────────┐     ┌──────────────────┐     ┌──────────────────┐     ┌─────────────────┐
│  ionic-team/        │     │  CI/CD           │     │  Claude Code     │     │  npm publish    │
│  capacitor          │────▶│  Pipeline        │────▶│  Security Review │────▶│  @capacitor-plus│
│  (upstream)         │     │  (daily sync)    │     │  (AI analysis)   │     │  packages       │
└─────────────────────┘     └──────────────────┘     └──────────────────┘     └─────────────────┘
  1. Sincronizzazione quotidiana: A GitHub Action fetches the latest changes from ionic-team/capacitor
  2. Creazione PR: Le modifiche vengono proposte come richieste di pull alle plus ramo
  3. Validazione CI: Esegue il set completo di test (lint, unit test, build iOS, build Android)
  4. Recensione di Claude Code: Analisi di sicurezza avanzata alimentata dall'intelligenza artificiale controlla:
    • Vulnerabilità di sicurezza (iniezione, XSS, ecc.)
    • Modifiche API che possono rompere il codice
    • Rischio di crash e problemi di stabilità
    • Preoccupazioni per l'integrità e la privacy dei dati
    • Modelli code maliziosi
  5. Auto-Merge: Solo se CI passa e Claude approva (nessun problema rilevato)
  6. Auto-Publish: Una nuova versione viene pubblicata su npm sotto @capacitor-plus/*

Recensione di Sicurezza

Tutti gli aggiornamenti sincronizzati sono analizzati per:

Controlla Descrizione
Sicurezza Iniezione di comando, XSS, percorso di navigazione, segreti hardcoded, ecc.
Cambiamenti significativi API rimosse o rinominate, firme cambiate, modifiche al formato di configurazione
Stabilità Riferimenti a nulli, eccezioni non gestite, condizioni di corsa, perdite di memoria
Sicurezza dei dati Scenari di perdita di dati, violazioni della privacy, archiviazione non sicura
Code Integrità Codice code oscurato, chiamate di rete sospette, porte di backdoor

Se vengono rilevati eventuali problemi, il PR viene segnalato per una revisione manuale e NON sarà automaticamente fuso.

Vuoi che il tuo PR venga fuso?

Hai un PR bloccato nel repository ufficiale Capacitor? Ecco come farlo entrare in Capacitor+:

  1. Apri un issue nel Capacitor+ repository facendo riferimento al tuo PR upstream
  2. O invia direttamente il PR alla plus branch
  3. La squadra lo esaminerà, eseguirà CI e lo fonderà se supera le prove

In questo modo, tu e gli altri potrai beneficiare del tuo lavoro immediatamente, senza dover attendere il ciclo di rilascio upstream.

Vantaggi

  • VantaggiPR Bloccati Ora
  • : Fix e funzionalità della community che attendono l'upstream vengono mergeResta Aggiornato
  • : Ottieni i fix upstream non appena passano CIPrima della Sicurezza
  • : Ogni modifica viene valutata per vulnerabilità e rischi di stabilitàRilasci Verificati
  • : Solo le modifiche che passano sia i test CI che la revisione di sicurezza AI vengono pubblicatiSostituzione in Punto (Drop-in Replacement) : Lo stesso API come Capacitor, solo con un diverso scope del pacchetto
  • La tua Voce Conta: Invia le tue PR o richiedi PR specifici upstream da essere fusi

Esempio: Utilizzare Capacitor+ con Plugin

Tutti i plugin ufficiali Capacitor funzionano senza problemi con 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();

I plugin Capgo funzionano perfettamente con 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' });

Ecco fatto! Ora hai una versione aggiornata più velocemente di Capacitor con miglioramenti della community fusi più velocemente. Le tue app beneficeranno di correzioni di bug e funzionalità senza dover attendere il ciclo di rilascio ufficiale.

Continua da Utilizzare Capacitor+ (@capacitor-plus) Pacchetti

Se stai utilizzando Utilizzare Capacitor+ (@capacitor-plus) Pacchetti per pianificare il lavoro dei plugin nativi, connettilo con Capacitor+ Capacitor+ per i dettagli di implementazione in Capacitor+: Directory dei plugin Capgo per il workflow del prodotto in Directory dei plugin Capgo Plugin Capacitor sviluppati da Capgo per i dettagli di implementazione in Plugin Capacitor sviluppati da Capgo Aggiungere o aggiornare i plugin per i dettagli di implementazione in Aggiungere o aggiornare i plugin, e Sostituti dei plugin aziendali di Ionic Enterprise per il workflow del prodotto in Sostituti dei plugin aziendali di Ionic Enterprise.