Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Facebook sort React Native pour Android
Et compile par la même occasion une version Android de son application Ads Manager avec le framework

Le , par Olivier Famien

143PARTAGES

4  0 
Depuis le mois de juin dernier, Facebook avait déclaré ne plus vouloir revenir au HTML 5 pour le développement d’applications mobiles natives, mais utiliserait dorénavant son Framework React Native avec JavaScript ou la bibliothèque React pour concevoir les applications mobiles.

Et pour joindre l’acte à la parole, la firme a entamé l’usage de son framework en production en concevant son application Facebook Ads Manager pour iOS entièrement avec React Native.


Pour rappel, cette application permet aux entreprises de créer et gérer les annonces publicitaires sur le réseau Facebook. Pour y arriver, Facebook a dû surmonter plusieurs défis en utilisant ce framework.

D’abord, il faut préciser que React Native souffrait de l’absence de plusieurs fonctionnalités. Facebook a donc fait appel des ingénieurs iOS afin d’étoffer les fonctionnalités iOS qui n’étaient pas disponibles dans React Native.

Ainsi, ils ont pu coupler les bibliothèques iOS déjà existantes avec l’application de sorte à pouvoir intégrer des fonctionnalités complexes et par-delà gagner en temps. Pour ce qui concerne ces bibliothèques, on peut citer Relay, son framework servant à fournir les données aux applications React à travers GraphQL.

Ensuite, il s’est présenté le problème d’internationalisation et de localisation qui peut s’avérer compliqué en raison de la disparité des devises et des fuseaux horaires. Pour régler le problème, la firme a écrit un script afin de récupérer les fichiers JSON ainsi que les données contenant les informations précédentes.

Il faut souligner que ces difficultés sont considérées comme majeures dans la mesure où React Native fait maintenant ces premiers pas dans l’environnement de développement d’applications mobiles natives.

Une autre difficulté qui constitua un véritable souci pour Facebook fut la mise en œuvre du processus de création des annonces. Cela a nécessité l’implémentation de la navigation, des transitions et la prise en compte des gestes.

Pour venir à bout de ce problème, Facebook a utilisé le composant Navigator qui gère les animations et les gestes dans React Native. Aussi pour achever le tout, le composant InteractionManager a été sollicité pour ralentir le chargement des données lorsque vous souhaitez ouvrir une fenêtre. Cela permet d’éviter les données prennent le pas sur les animations alors que le chargement celles-ci n’est pas encore achevé.

Après avoir résolu ces problèmes majeurs, l’équipe de Facebook s’est penchée sur la version Android. Ne voulant pas partir de zéro, elle s’est appuyée sur le code iOS pour créer les mêmes fonctionnalités Android dans un autre dépôt. Ce choix a été effectué afin d’éviter les instructions de conditions if… else utilisé pour vérifier quel code doit être utilisé pour la plateforme en cours. Cette méthode leur a permis de réutiliser environ 85 % du code de l’application iOS.

Ensuite, les ingénieurs ont récupéré le code JavaScript contenu dans le dépôt iOS afin de l’utiliser pour le projet Android. Vu que ce n’est pas du code natif, cela n’a posé aucun problème dans l’application Android. En fin de compte, l’équipe en charge du projet a pu créer l’application Android en utilisant uniquement le Framework React Native.

Il faut souligner également que cette expérience a servi de levier d’appui pour mettre en œuvre les composants Android du Framework React Native. En parcourant la documentation React Native, vous pourrez apercevoir les nouvelles fonctionnalités Android ajoutées. React Native supporte dorénavant les modules natifs Android, les composants UI natifs, prend en charge le débogage d’applications Android, etc. Les développeurs qui souhaitent donc créer des applications mobiles cross plateformes peuvent le faire maintenant.

Télécharger le code source React Native pour Android sur GitHub

Source : Facebook

Et vous ?

Utilisez-vous React Native ? Comment le trouvez-vous ?

Que pensez-vous de React Native pour Android ?

Forum framework JavaScript

Une erreur dans cette actualité ? Signalez-le nous !