Dans un monde en évolution de développement d'applications mobiles, la montée en puissance des Applications Web Progressives (PWAs) a ouvert la voie à de nouveaux runtimes multiplateformes. Ces runtimes permettent aux applications web de figurer dans les magasins d'applications sans se fier uniquement au code natif code. Une technologie qui facilite cela est CapacitorJS, qui permet aux développeurs de déployer un site web simple en tant qu'application sur Android, iOS et le web à l'aide d'un code JavaScript unique. Cette approche réduit considérablement les coûts de développement et augmente l'efficacité de codage.
Cet guide se concentrera sur la création d'une application à l'aide de JavaScript pur sans aucun framework supplémentaire. Malgré les difficultés de trouver des ressources pour le développement d'applications JavaScript pur en 2021, nous sommes là pour vous fournir un guide complet sur la création de votre application et l'utilisation de plugins natifs avec CapacitorJS.
‣ Prérequis
Avant de commencer, assurez-vous d'avoir les outils suivants installés :
- Node.js (v14.16.1) ou supérieur
- NPM (v7.6.2) ou supérieur
- Android Studio pour le développement d'applications Android
- Xcode pour le développement d'applications iOS (macOS uniquement)
Note: Le développement d'applications iOS est uniquement possible sur un appareil macOS.
‣ Configuration de votre projet Capacitor
Pour créer une application Capacitor, naviguez jusqu'à votre dossier souhaité et exécutez la commande suivante dans votre terminal :
npm init @capacitor/app
Suivez les invites pour installer le package et configurer votre projet. Avec Capacitor v3, votre répertoire de projet devrait ressembler à ceci :
www/
css/
style.css
js/
capacitor-welcome.js
index.html
manifest.json
.gitignore
capacitor.config.json
package.json
README.md
Une fois la configuration initiale terminée, vous êtes prêt à passer à l'étape suivante.
‣ Restructuration du projet
Nous utiliserons Vite pour empaqueter nos fichiers JavaScript, donc réorganisons notre projet en conséquence :
- Créer un nouveau dossier
srcdans le répertoire principal. - Créer un nouveau fichier de script
index.jsen françaissrc/. - Créer le fichier de configuration Vite
vite.config.jsdans le répertoire principal. - Supprimer le
capacitor-welcome.jsfichier dewww/js/.
Votre nouvelle structure de dossier devrait ressembler à :
src/
index.js
www/
css/
style.css
js/
index.html
manifest.json
.gitignore
capacitor.config.json
package.json
README.md
vite.config.js
‣ Adaptation au JavaScript pur
Modifions quelques fichiers pour qu'ils fonctionnent avec du JavaScript pur :
www/index.html
- Supprimer les importations de scripts pour Éléments PWA Ionic Si vous n'êtes pas en train de lancer l'application sous forme de PWA :
<script type="module" src="https://unpkg.com/@ionic/pwa-elements@latest/dist/ionicpwaelements/ionicpwaelements.esm.js"></script>
<script nomodule src="https://unpkg.com/@ionic/pwa-elements@latest/dist/ionicpwaelements/ionicpwaelements.js"></script>
-
Supprimer l'élément HTML de la section body.
<capacitor-welcome>Mettre à jour l'importation de script depuis -
vers
capacitor.js. Cela sera notre fichier JavaScript embarqué.js/main.jsSupprimer l'importation de -
Votre
js/capacitor-welcome.jsest maintenant prêt.index.htmlvite.config.js
Pour emballer nos modules Node.js avec
Si vous n'êtes pas en train de lancer l'application sous forme de PWA : ViteNous avons besoin d'un fichier de configuration spécifiant la destination de sortie de notre script compilé. La configuration suivante prendra le fichier src/index.js et le bundlera pour la production sous www/js/main.js:
import { defineConfig } from 'vite';
import path from 'node:path';
export default defineConfig({
build: {
outDir: path.resolve(__dirname, 'www'),
rollupOptions: {
input: './src/index.js',
output: {
format: 'es',
file: path.resolve(__dirname, 'www/js/main.js')
}
}
}
});
capacitor.config.json
Dans le capacitor.config.json fichier, localisez la "bundledWebRuntime": true propriété et modifiez-la en false. Cette mise à jour garantit que Capacitor ne bundle pas les fichiers, nous permettant d'utiliser Vite à cette fin.
En effectuant ces modifications, votre application Capacitor est prête à démarrer et vous êtes prêt à développer votre application avec du JavaScript pur.
‣ Développement de votre application
Maintenant que les bases sont posées, vous pouvez commencer à écrire la logique de votre application dans le src/index.js fichier. Ici, vous pouvez importer les modules Node.js nécessaires, définir la fonctionnalité de votre application et interagir avec les plugins natifs de Capacitor.
Souvenez-vous de lancer la commande de build de Vite pour regrouper vos fichiers JavaScript chaque fois que vous apportez des modifications :
vite build
Cette commande générera le main.js fichier dans votre www/js répertoire, qui sera référencé par votre index.html fichier.
‣ Test et Débogage
Capacitor vous offre une façon pratique de tester votre application sur diverses plateformes. Utilisez les commandes suivantes pour ouvrir votre application dans l'environnement de développement correspondant :
Pour Android :
npx cap add android
npx cap open android
Pour iOS (macOS uniquement) :
npx cap add ios
npx cap open ios
Pour Web/PWA :
npx cap serve
Ces commandes vous permettront de lancer votre application dans Android Studio, Xcode ou votre navigateur web, où vous pourrez tester et déboguer si nécessaire.
‣ Conclusion
Le développement d'applications cross-plateformes avec CapacitorJS en utilisant du JavaScript pur est un moyen coûteux et efficace de créer des applications pour plusieurs plateformes avec un seul codebase.
Souvenez-vous de tester soigneusement sur toutes les plateformes et utilisez les plugins natifs de Capacitor pour améliorer la fonctionnalité de votre application. Bon codage!
Continuez de Developper des Applications Cross-Plateformes avec CapacitorJS : Guide étape par étape
Si vous utilisez Developper des Applications Cross-Plateformes avec CapacitorJS : Guide étape par étape pour planifier le travail de plugin natif, connectez-le avec Répertoire de plugins de Capgo pour le flux de travail du produit dans Répertoire de plugins de Capgo Plugins de Capacitor par Capgo pour les détails d'implémentation dans Plugins de Capacitor par Capgo, Ajouter ou Mettre à jour les plugins pour les détails d'implémentation dans Ajouter ou Mettre à jour les plugins, Alternatives de plugins d'entreprise Ionic pour le flux de travail du produit dans les alternatives de plugins d'entreprise Ionic, et Capgo Builds natifs pour le flux de travail du produit dans Capgo Builds natifs.