Sauter au contenu principal
Retour aux plugins
@capacitor-plus/core
Tutoriel
@capacitor-plus/core

@Capacitor+ Core

@Capacitor+ est une version automatisée, toujours synchronisée, de @Capacitor avec des PR communautaires fusionnés et des mises à jour rapides

Guide

Tutoriel sur Capacitor+ Core

Utilisation de Capacitor+ (@capacitor-plus) Packages

Capacitor+ est une branche automatique et toujours synchronisée de Capacitor entretenu par Capgo. Il fournit une substitution de remplacement pour les packages officiels Capacitor avec un avantage clé : les PRs et les correctifs de la communauté sont fusionnés plus rapidement.

Pourquoi Capacitor+ existe-t-il

L'équipe Ionic maintient Capacitor en fonction de leurs propres priorités et de leur calendrier de publication. Cela signifie que les contributions de la communauté - corrections de bogues, améliorations et fonctionnalités - peuvent attendre des mois ou même des années avant d'être intégrées. Certaines ne sont jamais acceptées.

Capacitor+ résout ce problème en :

  1. Fusionner les PR de Forks - Les PR précieux qui sont bloqués dans la file d'attente de l'amont sont fusionnés activement
  2. Synchronisation Continue - Chaque changement de l'amont Capacitor est automatiquement récupéré, testé et vérifié
  3. Lancements Rapides - Lorsque les changements passent par la CI, ils sont automatiquement publiés sur npm sous le @capacitor-plus scope
  4. Communauté en Premier - Vos contributions comptent et sont priorisées
  5. Vérification de Sécurité Tout changement est analysé par l'IA pour les vulnérabilités de sécurité, les changements de rupture et les risques de stabilité

Packages Disponibles

Package Description
@capacitor-plus/core Bibliothèque de runtime de base
@capacitor-plus/cli Interface de ligne de commande
@capacitor-plus/android Runtime Android
@capacitor-plus/ios Runtime iOS

Installation

Nouveau Projet

Pour un nouveau projet, utilisez simplement les Capacitor+ packages au lieu des officiels :

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

Ensuite, initialisez votre projet :

npx cap init
npx cap add android
npx cap add ios

Migrer depuis le Capacitor officiel

Pour migrer un projet existant depuis le Capacitor officiel vers 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

Étant donné que Capacitor+ est un remplacement sans effort avec le même API, aucune modification code n'est requise. Vos importations restent les mêmes :

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

Comment ça marche

┌─────────────────────┐     ┌──────────────────┐     ┌──────────────────┐     ┌─────────────────┐
│  ionic-team/        │     │  CI/CD           │     │  Claude Code     │     │  npm publish    │
│  capacitor          │────▶│  Pipeline        │────▶│  Security Review │────▶│  @capacitor-plus│
│  (upstream)         │     │  (daily sync)    │     │  (AI analysis)   │     │  packages       │
└─────────────────────┘     └──────────────────┘     └──────────────────┘     └─────────────────┘
  1. context : Page/zone : Page de produit de build cloud native de Capgo. Rôle : En-tête de section ou de page. Clé de message `native_build_how_it_works_title` (Titre Comment ça marche Native Build). | Page/zone : Section de problème/solution de la page d'accueil. Rôle : Étiquette de navigation ou élément de navigation court. Vu dans : page premium-support.astro. Clé de message `ps_how_it_works` (Ps Comment ça marche). | Page/zone : Page de produit de mise à jour en temps réel. Rôle : En-tête de section ou de page. Vu dans : page live-update.astro. Clé de message `live_update_how_it_works_title` (Titre Comment ça marche Mise à jour en temps réel).: A GitHub Action fetches the latest changes from ionic-team/capacitor
  2. : Une action __CAPGO_KEEP_0__ récupère les dernières modifications depuisCréation de PR plus : Les modifications sont proposées sous forme de demandes de tirage vers le
  3. branchValidation CI : : Exécution complète du jeu de tests (lint, tests unitaires, build iOS, build Android)
  4. Claude Code Review: Analyse de sécurité puissante basée sur l'IA qui vérifie :
    • Vulnérabilités de sécurité (injection, XSS, etc.)
    • Changements API brisants
    • Risques de plantage et problèmes de stabilité
    • Préoccupations concernant l'intégrité et la confidentialité des données
    • Modèles code malveillants
  5. Auto-Merge: Seuls si le CI passe ET Claude approuve (aucun problème détecté)
  6. Auto-Publish: Une nouvelle version est publiée sur npm sous @capacitor-plus/*

Révision de Sécurité

Chaque synchronisation en amont est analysée pour :

Vérifier Description
Sécurité Injection de commande, XSS, parcours de chemin, secrets fixés, etc.
Changements de rupture API supprimées/renommées, signatures modifiées, changements de format de configuration
Stabilité Références à null, exceptions non gérées, conditions de course, fuites de mémoire
Sécurité des données Scénarios de perte de données, violations de la vie privée, stockage non sécurisé
Code Intégrité Obfusqués code, appels réseau suspects, backdoors

Si des problèmes sont détectés, le PR est signalé pour une revue manuelle et NE sera PAS fusionné automatiquement.

Voulez-vous que votre PR soit fusionné ?

Avez-vous un PR bloqué dans le dépôt officiel Capacitor ? Voici comment le faire passer dans Capacitor+ :

  1. Ouvrez une issue dans le dépôt Capacitor+ en faisant référence à votre PR upstream
  2. Ou soumettez le PR directement à la plus branche
  3. L'équipe le passera en revue, exécutera la CI et le fusionnera si cela passe

De cette façon, vous et les autres pouvez bénéficier de votre travail immédiatement, sans attendre le cycle de mise à jour upstream.

Avantages

  • Obtenez les PR bloqués maintenantRestez à jour
  • Obtenez les correctifs upstream dès qu'ils passent par les tests CISécurité en premier
  • Chaque changement est examiné pour les vulnérabilités et les risques de stabilitéVersions vérifiées
  • Seules les modifications qui passent par les tests CI et la revue de sécurité AI sont publiéesRemplacement en un clic
  • Même __CAPGO_KEEP_0__ que __CAPGO_KEEP_1__, mais avec un champ de package différent: Same API as Capacitor, just a different package scope
  • Votre Voix Compte: Soumettez vos propres PRs ou demandez des PRs upstream spécifiques pour être fusionnés

Exemple : Utilisation de Capacitor+ avec les Plugins

Tous les plugins officiels Capacitor fonctionnent sans heurts avec 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 plugins fonctionnent également parfaitement avec 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' });

C'est tout ! Vous avez maintenant une version mise à jour plus rapide de Capacitor avec des améliorations communautaires fusionnées plus rapidement. Vos applications bénéficieront de correctifs de bogues et de fonctionnalités sans attendre le cycle de mise à jour officiel.

Continuez à partir de Utilisation de Capacitor+ (@capacitor-plus) Packages

Si vous utilisez Utilisation de Capacitor+ (@capacitor-plus) Packages pour planifier le travail de plugin natif, connectez-le avec Capacitor+ Capacitor+ pour les détails d'implémentation dans Capacitor+: Répertoire de plugins Capgo pour le flux de travail du produit dans le Capgo Répertoire de plugins Capacitor Plugins par Capgo pour le détail d'implémentation dans les Capacitor Plugins par Capgo Ajouter ou Mettre à Jour les Plugins pour le détail d'implémentation dans Ajouter ou Mettre à Jour les Plugins, et Alternatives de Plugins d'Entreprise Ionic pour le flux de travail du produit dans les Alternatives de Plugins d'Entreprise Ionic.