Saltare al contenuto principale
Torna ai plugin
@capacitor-plus/core
Tutorial
tramite github.com/Cap-go

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 CapgoFornisce una sostituzione a getto secco per i pacchetti ufficiali Capacitor con un vantaggio chiave: PR della community e correzioni vengono integrate più velocemente.

Perché Capacitor+ Esiste

Il team 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 integrate. Alcune non vengono mai integrate.

Capacitor+ risolve questo problema in questo modo:

  1. Integrazione di PR da Fork - I preziosi PR bloccati nella coda upstream vengono integrati attivamente
  2. Sincronizzazione Continua - Ogni cambiamento da Capacitor upstream viene automaticamente recuperato, testato e verificato
  3. Rilasci Rapidi - Quando i cambiamenti superano CI, vengono automaticamente pubblicati su npm sotto @capacitor-plus ambito
  4. Comunità-Prima - I tuoi contributi contano e vengono prioritizzati
  5. Verificato per la Sicurezza - Ogni cambiamento viene analizzato dall'AI 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 di linea di comando
@capacitor-plus/android Runtime per Android
@capacitor-plus/ios Runtime per iOS

Installa

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

Poi inizializza il tuo progetto:

npx cap init
npx cap add android
npx cap add ios

Migrazione dagli Officiali Capacitor

Per migrare un progetto esistente dagli officiali Capacitor a 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

Dato che Capacitor+ è un sostituto a caduta di spada con lo stesso API, non sono richieste code modifiche. Le tue importazioni rimangono le stesse:

// 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. Sync Giornaliera: Un'azione GitHub recupera le ultime modifiche da ionic-team/capacitor
  2. Creazione di PR: Le modifiche vengono proposte come richieste di pull ai plus ramo
  3. Validazione CI: Esegue l'intero set di test (lint, test unitari, build iOS, build Android)
  4. Recensione di Claude Code: Analisi di sicurezza completa alimentata dall'intelligenza artificiale controlla:
    • Vulnerabilità di sicurezza (iniezione, XSS, ecc.)
    • Rischi di rottura di API e problemi di stabilità
    • Preoccupazioni per l'integrità e la privacy dei dati
    • Modelli maliziosi di __CAPGO_KEEP_0__
    • Malicious code patterns
  5. : Solo se CI passa E Claude approva (nessun problema rilevato)Auto-Merge: Solo se CI passa e Claude approva (nessun problema rilevato)
  6. Auto-Pubblica: Una nuova versione viene pubblicata su npm sotto @capacitor-plus/*

Rivista di Sicurezza

Ogni sincronizzazione upstream viene analizzata per:

Verifica Descrizione
Sicurezza Iniezione di comando, XSS, percorso di navigazione, segreti hardcoded, ecc.
Cambiamenti Rottami API rimosse/renominati, firme cambiate, modifiche al formato di configurazione
Stabilità Dereferenziazione di null, eccezioni non gestite, condizioni di corsa, fuga di memoria
Salvaguardia dei dati Scenari di perdita di dati, violazioni della privacy, archiviazione non sicura
Code Integrità code oscurato, chiamate di rete sospette, 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 al plus ramo
  3. Il team lo esaminerà, eseguirà CI e lo unirà se supera

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

Benefici

  • Ricevi PR bloccati ora: Le correzioni e le funzionalità della community che attendono upstream vengono unite
  • Resta all'Ultimo: Ricevi le correzioni upstream non appena superano CI
  • Prima della Sicurezza: Ogni modifica viene esaminata per vulnerabilità e rischi di stabilità
  • Rilasci Verificati: Solo le modifiche che superano entrambi i test di CI e la revisione di sicurezza AI vengono pubblicate
  • Rimpiazzo in un solo passo: Lo stesso API di Capacitor, ma con un diverso ambito di pacchetti
  • La tua voce conta: Invia le tue proprie PR o richiedi la fusione di specifiche PR upstream

Esempio: Utilizzo di 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! Ora hai una versione aggiornata più veloce di Capacitor con miglioramenti della community integrate più velocemente. Le tue app beneficeranno di correzioni di bug e funzionalità senza dover attendere il ciclo di rilascio ufficiale.

Continua da Utilizzo di Capacitor+ (@capacitor-plus) Pacchetti

Se stai utilizzando Utilizzo di Capacitor+ (@capacitor-plus) Pacchetti per pianificare il lavoro di plugin nativo, connettilo con Capacitor+ per i dettagli di implementazione in Capacitor+ Capgo Directory dei Plugin per il workflow del prodotto in Capgo Directory dei Plugin, Capacitor Plugin da Capgo per i dettagli di implementazione in Capacitor Plugin da Capgo, Aggiunta o Aggiornamento dei Plugin per i dettagli di implementazione in Aggiunta o Aggiornamento dei Plugin, e Alternative per Plugin Enterprise di Ionic per il workflow del prodotto in Alternative per Plugin Enterprise di Ionic.