Saltare al contenuto principale
Indietro ai plugin
@capacitor-plus/core
Guida
@capacitor-plus/core

@Capacitor+ Core

@Capacitor+ è una versione automatizzata e sincronizzata di @Capacitor con PR della community fusionati e rilasci rapidi

Guida

Tutoriale su Capacitor+ Core

Utilizzo dei pacchetti Capacitor+ (@capacitor-plus)

Capacitor+ è una fork automatica e sempre sincronizzata di Capacitor mantenuta da Capgo. Fornisce 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 gestisce 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 ci arrivano mai.

Capacitor+ risolve questo problema in questo modo:

  1. Unione di PR da Fork - I preziosi PR bloccati nella coda upstream vengono uniti attivamente
  2. Sincronizzazione Continua - Ogni modifica da Capacitor upstream viene automaticamente recuperata, testata e verificata
  3. Rilasci Veloci - Quando le modifiche superano la CI, vengono automaticamente pubblicate su npm sotto lo @capacitor-plus scope
  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à

Packaggi Disponibili

Packaggio 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

Poi inizializza il tuo progetto:

npx cap init
npx cap add android
npx cap add ios

Migrare da ufficiale Capacitor

Per migrare un progetto esistente da ufficiale 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

Poiché Capacitor+ è un sostituto a caduta di mano con lo stesso API, non sono richieste modifiche code. 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. Contesto: Pagina/Area: Capgo Builder / prodotto di costruzione cloud nativa. Ruolo: Intestazione di sezione o pagina. Chiave di messaggio `native_build_how_it_works_title` (Titolo di come funziona la costruzione nativa). | Pagina/Area: Sezione di problema/soluzione della homepage. Ruolo: Etichetta di UI breve o elemento di navigazione. Visto in: pagina premium-support.astro. Chiave di messaggio `ps_how_it_works` (Ps Come funziona). | Pagina/Area: Pagina del prodotto di aggiornamenti in tempo reale. Ruolo: Intestazione di sezione o pagina. Visto in: pagina live-update.astro. Chiave di messaggio `live_update_how_it_works_title` (Titolo di come funziona l'aggiornamento in tempo reale).: A GitHub Action fetches the latest changes from ionic-team/capacitor
  2. : Un'azione __CAPGO_KEEP_0__ recupera le ultime modifiche daCreazione della PR plus : Le modifiche vengono proposte come richieste di pull alle
  3. ramoValidazione CI
  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

Ogni sincronizzazione upstream viene analizzata per:

Controlla Descrizione
Sicurezza Injectione di comando, XSS, percorso di navigazione, segreti hardcoded, ecc.
Modifiche di sistema Rimosse/renumerate API, cambiati segnali, modifiche di formato di configurazione
Affidabilità Riferimenti a nulli, eccezioni non gestite, condizioni di corsa, perdite di memoria
Sicurezza dei dati Schiavi di dati, violazioni della privacy, archiviazione non sicura
Integrità Code 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 fuserà se supera

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

Vantaggi

  • contextPRs bloccati adesso
  • : Rimesse in linea le correzioni e le funzionalità della community che attendono upstreamResta aggiornato
  • : Ottieni le correzioni upstream non appena passano le prove di CIPrima della sicurezza
  • : Ogni modifica viene valutata per vulnerabilità e rischi di stabilitàRilasci verificati
  • : Vengono pubblicati solo le modifiche che superano sia le prove di CI che la revisione di sicurezza AI: Same API as Capacitor, just a different package scope
  • La tua Voce Conta: Invia le tue PR o richiedi PR specifiche upstream da essere merge

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();

Anche 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 integrate 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+ 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 Alternative plugin Enterprise Ionic per il workflow del prodotto in Alternative plugin Enterprise Ionic.