J’ai créé une app iOS avec Ionic en utilisant JS !! (actualisé version 2.1)
Les développeurs se posent toujours la question de diversifier leurs connaissances des langages de programmation. Moi, par exemple, j’ai commencé à apprendre Swift en 2015 pour coder des app iOS et MacOS, puis Javascript pour enfin obtenir une certification professionnelle chez Openclassroom. Mais entretenir une connaissance fine des deux est compliqué, surtout quand ce n’est pas notre activité principale ou juste un hobby. Lors de mon parcours chez OC, c’est un mentor qui m’a parlé de solutions pour coder des apps iOS en javascript. Alors voilà comment j’ai créé une app iOS avec Ionic.
J’ai donc d’abord essayé Nativescript que je n’ai pas trouvé si simple à mettre en oeuvre, surtout dans l’utilisation de la ligne de commande pour compiler le code et bundler le package en app compatible Apple. Depuis, ça a dû évoluer et j’avoue que cela fait au moins an que je n’ai pas regardé ça. C’est simplement mon retour d’expérience, qui m’a poussé à aller vers une autre solution.
Ma solution
La solution, qui fait qu’aujourd’hui j’ai 2 apps en vente sur l’AppStore, c’est Ionic ! Ce qui m’a conquis? la simplicité d’utilisation de l’utilisation via la ligne de commande. Est-ce que c’est la panacée? Clairement pas, certaines choses sont perfectibles mais rien d’insurmontable, même pour le codeur lobbyiste que je suis.
C’est donc, avec un brin de fierté (je l’avoue!), que je vous montre mes apps. La première, qui m’a servi de cobaye, c’est une app utilitaire qui répond à un besoin précis. Un brin sportif à mes heures, j’ai besoin de calculer mes allures de courses pour suivre mon plan d’entraînement. J’en avais marre d’aller systématiquement en ligne pour ça. En plus, je devais aller sur plusieurs sites pour avoir toutes les fonctionnalités. Donc, l’idée, avoir ça dans mon smartphone, customizé à ma sauce. D’où mon app Run4Speed (code promotionnel J7FEWPYWEF7W) qui convertit une allure en vitesse et inversement, qui calcule votre vitesse sur une distance/temps donnés et qui calcule les zones cardio pour aider l’entraînement.
Content de moi, je publie donc une version 1.0 avec juste les deux premières fonctionnalités, puis en un mois des améliorations jusqu’à la v1.3. Et là, j’ai une autre idée, un autre objectif!
Je poursuis sur ma lancée!
Content d’avoir réussi à publier cette app, je repense à de apps codées sous Xcode en Swift. Notamment une que j’avais publiée sur l’AppStore et qui était retiré de la vente depuis peut-être un an car elle ne correspondait plus aux standards Apple (et oui, c’est très surveillé).
Parmi tous mes hobbys, je fais de l’impression 3D. J’avais eu l’idée un jour de le faire pour d’autres via des services en lignes (voir mon article). Le hic, c’est qu’il faut donner un prix. Mais comment l’évaluer? J’avais donc trouvé une idée d’app que j’avais appelé Print3DQuote. Egalement retirée de la vente par Apple car je n’avais plus le temps de m’en occuper, de la maintenir. Voilà donc un nouveau challenge : la remettre au goût du jour avec Ionic.
J’ai donc publié récemment sur l’AppStore une nouvelle version (v2.1), uniquement pour iOS, d’ailleurs avec le code promotionnel MWXM9PKLLFL3 en ce moment. A l’époque j’avais publié une version iOS et une version MacOS. Rien d’insurmontable avec Ionic, travail en cours pour la partie desktop. Mais c’est surtout que ma v1.0 n’a pas encore toutes les fonctionnalités voulues. Il me reste à implémenter la sauvegarde des préférences. Cela évitera par exemple de devoir toujours remplir les frais d’expédition qui ne doivent pas changer beaucoup, etc… Mais aussi la possibilité d’éditer un devis, c’était ça l’idée d’origine d’ailleurs. Un devis qui doit ensuite pouvoir s’échanger numériquement ou être imprimé.
Pas toujours si facile
Si vous m’avez suivi jusque-là, c’est le moment de parler de ce qui est le plus difficile avec des framework non natifs pour iOS ou Android d’ailleurs. D’ailleurs, je ne ne parle pas de ce dernier car je n’ai pas de smartphone sur cet OS et que je ne m’y suis pas encore intéressé (désolé pour les inconditionnels!).
Pour implémenter les deux fonctionnalités évoquées avant, il faut utiliser des plugins dans Ionic. Autant les éléments basiques sont hyper simples à utiliser et la documentation claire, autant pour les plugins je pense que ça va bricoler un peu plus. Mais bon, ce n’est pas grave, je me lance. Je vous tiendrais au courant en modifiant l’article au fur et à mesure que ma Todo list est remplie.
Voilà comment j’ai créé mes apps iOS avec Ionic. Merci pour la lecture et surtout si vous avez des suggestions, remplissez le formulaire de contact!!
Mise à jour version 2.1
Comme évoqué plus haut, j’ai continué à développer des fonctionnalités qui permettent aujourd’hui:
- Sauvegarder certaines préférences comme le taux moyen horaire, les frais d’expédition, le taux de TVA. C’était l’occasion d’utiliser le plugin Capacitor Storage
- Personnaliser le nom de votre société et votre logo. Pour cette dernière fonctionnalité, j’ai utilisé Capacitor Camera
- Le devis est généré via le plugin PDF generator. En plus de générer un PDF sur la base de code HTML dans le quel j’injecte des données dynamiques intégrées, ce plugin permet de partager, annoter ou enregistrer le devis généré
Je vous laisse essayer cette app et me faire vos remarques pour que je continue à l’améliorer et à m’améliorer. Faites de la pub !!
J’ai créé une app iOS avec Ionic en utilisant JS !! (actualisé version 2.1) par madeinfck.com est sous Licence Creative Commons Internationale Attribution-Pas d'utilisation Commerciale-Partage à l'identique 4.0 .