web-dev-qa-db-fra.com

Flutter - Importer à partir d'un projet Android existant

Je travaille actuellement sur un projet Android complet à environ 75%. J'ai besoin d'une application similaire pour iOS.

Puis-je importer ce projet pour flotter? Comment?

De plus, flutter supportera-t-il les bibliothèques que j'ai utilisées dans ce projet?

9
Rashiq

Flutter utilise une architecture de rendu radicalement différente. Tout le rendu est calculé avec le code Dart, sans jamais utiliser d'éléments natifs. 

Ainsi, non seulement vous ne pouvez pas utiliser de code natif, vous ne pouvez pas non plus avoir quelque chose comme une "Importation native en mode flottant". 

Pour les bibliothèques, c'est un sujet compliqué. Vous pouvez les utiliser. Mais uniquement à l'intérieur de ce que Flutter appelle Plate-forme . Ce qui est une api pour faire un appel système écrit en code qui s’exécute de manière native dans le système d’exploitation.

Donc, des bibliothèques telles que Firebase vont bien. Mais les bibliothèques de composants ou des choses comme rxjava sont en panne. Vous aurez besoin d'une bibliothèque de fléchettes similaire.

1
Rémi Rousselet

Puis-je importer ce projet pour flotter? Comment?

À ce jour, j'ai étudié jusqu'à présent, il n'y avait aucune option d'importation disponible pour les projets de tout autre cadre. L'architecture Flutter est complètement différente et nouvelle par rapport aux autres. Nous pouvons inclure notre code Android existant dans notre projet mais il n'aura aucune utilisation pour iOS car tout le travail multiplate-forme est effectué dans Dart à l'aide du kit de développement logiciel Flutter.

Est-ce que flutter prend en charge les bibliothèques que j'ai utilisées dans ce projet?

Non, car flutter fournit ses propres bibliothèques écrites en Dart. Jour après jour, ils ajoutent de nouvelles bibliothèques et nous devons les utiliser.

Nous devons donc écrire le projet complet en langage Dart, utiliser les bibliothèques existantes et créer un nouveau projet.

0
Rashiq

D'après ce que j'ai vu, vous allez probablement devoir le porter sur Dart pour la plupart. Cependant, comme vos 75% incluent probablement beaucoup plus que du codage (comme la conception, l’interaction, le flux), la partie la plus facile consiste à recoder celle-ci dans Dart.

0
Randal Schwartz

Je dirais non, il n'y en a pas. Et la raison est bien expliquée par @creativecreatorormaybenot. J'ajouterais que ce n'est pas seulement la différence de langue qui le rend difficile, mais l'ensemble des vues natives d'Android, la hiérarchie des vues est différente de la hiérarchie des vues de Flutter . Si vous connaissez bien le framework Cocos, qui a sa propre vue. hiérarchie dessinée, le flutter est semblable à celui-là seulement meilleur, riche et attesté par Google (je suppose;;)) . Le point de lancement est toujours une activité Android régulière en flutter, mais c’est à peu près tout. Ensuite, le contrôle passe au flutter pour mesurer et dessiner les widgets d'interface utilisateur . Il se peut que vous ayez encore besoin d'implémenter certaines fonctionnalités nécessitant des services système, l'accès au matériel devant être écrit en style natif Java/Kotlin Android/IOS style indigène.

Recommandation: .__ À ce stade, je ne vous recommanderais pas d’utiliser une méthode sophistiquée pour convertir Dart en interface utilisateur Java/kotlin et Android en interface utilisateur Flutter, même si vous voyez quelque chose en ligne qui le fait. La raison étant, Flutter lui-même est une expérience de Google et n'est pas encore mature comme Android. Vous devez vous attendre à ce que certaines nuances soient changées fréquemment. Puisque vous avez déjà terminé 75%, je dirais que vous devez aller en mode natif (Android et IOS) ou en mode Flutter.

Pour répondre avec précision à votre question: Puis-je importer ce projet pour flotter?Pas pour le moment.

De plus, flutter supportera-t-il les bibliothèques que j'ai utilisées dans ce projet?Genre de. Puisque vous n’avez mentionné aucune des bibliothèques que vous avez utilisées, je vais prendre quelques exemples pour que ce soit plus clair: - La bibliothèque de téléchargement d’images (glide, picasso) peut être remplacée par celle de flutter. Image widget - Si vous utilisez des bibliothèques Java principales que vous souhaitez porter à Flutter, vous pouvez suivre la documentation de Flutter à propos de développement de packages et de plugins qui dit essentiellement de déclarer contract/apis dans Dart et les packages Java d'imlementation dans le dossier 'Android'. Le contrat reste le même pour IOS et Android .- Si vous souhaitez utiliser des composants de niveau système, comme je l’ai mentionné plus tôt, les packages et les plugins sont le chemin à parcourir . Ici est la liste des plugins de première main développés par l'équipe Dart. 

0
Aleon Q