Dans le monde en évolution de la développement d'applications mobiles, l'émergence des Applications Web Progressives (PWAs) a ouvert la voie à de nouveaux runtimes cross-plateformes. Ces runtimes permettent aux applications web de figurer dans les magasins d'applications sans se fier uniquement au code natif. 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 défis de trouver des ressources pour le développement d'applications JavaScript pur en 2021, nous sommes là pour vous fournir un tutoriel 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 une version supérieure
- NPM (v7.6.2) ou supérieur
- Android Studio pour le développement d'applications Android
- Xcode pour le développement d'applications iOS (disponible uniquement sur macOS)
Remarque :Le développement d'applications iOS n'est possible que sur un appareil macOS.
‣ Configuration de votre projet Capacitor
Pour créer une application Capacitor, accédez au répertoire 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, il faut donc restructurer notre projet en conséquence :
- Créer un nouveau dossier
srcdans le répertoire principal. - Créer un nouveau fichier de script
index.jsdanssrc/. - Créer le fichier de configuration Vite
vite.config.jsdans le répertoire principal. - Supprimer le
capacitor-welcome.jsle fichier 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 à Pure JavaScript
Modifions quelques fichiers pour qu'ils fonctionnent avec le JavaScript pur :
www/index.html
- Supprimez les importations de script pour Ionic PWA Elements si vous ne diffusez pas 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>
-
Supprimez le
<capacitor-welcome>élément HTML du corps. -
Mettez à jour l'importation de script depuis
capacitor.jsàjs/main.js. Cela sera notre fichier JavaScript bundlé. -
Supprimer le
js/capacitor-welcome.jsimport. Votreindex.htmlest maintenant prêt.
vite.config.js
Pour bundler nos modules Node.js avec Vite, nous avons besoin d'un fichier de configuration spécifiant la destination de sortie de notre script bundlé. 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 localisez le fichier "bundledWebRuntime": true propriété et modifiez-la en false. Cette mise à jour garantit que Capacitor ne bunde pas les fichiers, nous permettant d'utiliser Vite à cette fin.
Après ces modifications, votre application Capacitor dispose d'une mise en place de base complète, et vous êtes prêt à commencer à développer votre application avec du JavaScript pur.
‣ Développer votre application
Maintenant que le fondement est posé, 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.
N'oubliez pas de lancer la commande de build de Vite pour bundler 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, que votre index.html fichier référencera.
‣ Test et Débogage
Capacitor offre une méthode pratique pour tester votre application sur diverses plateformes. Utilisez les commandes suivantes pour ouvrir votre application dans l'environnement de développement de la plateforme respective :
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 comme nécessaire.
‣ Conclusion
Le développement d'applications cross-platform avec CapacitorJS en utilisant uniquement JavaScript est une façon rentable et efficace de créer des applications pour plusieurs plateformes avec un seul codebase. En suivant ce guide, vous avez configuré votre projet, le réorganisé pour Vite et préparé votre application au développement. Avec cette base, vous êtes bien en route pour créer une application robuste et polyvalente.
N'oubliez pas de tester soigneusement sur toutes les plateformes et utilisez les plugins natifs de Capacitor pour améliorer la fonctionnalité de votre application. Bon codage !