Projet Android à partir d'un projet java existant
Bonjour,
Je possède une application graphique complète en java pour ordinateur.
Il respecte normalement le modèle MVC (model view controller).
Et est disponible dans un repository Github.
J'aimerais pouvoir créer une application mobile (android avec gradle et java) à partir de ce code.
En regardant ce que j'avais fait, je pense n'avoir qu'à changer la partie vue.
J'ai quelques questions avant de commencer le développement de ce projet Android :
- Est ce que je dois créer un nouveau repository ? Ou est-ce que je change l'arborescence pour y mettre "version ordinateur" et "version Android" ?
- Comme il est probable que toute la partie "model" se répète, le plus simple serait de copier-coller mais est ce qu'il n'y a pas une meilleure méthode si je réutilise exactement le même code pour la partie "model" ?
- Est-ce que vous avez des remarques à ajouter ? Des conseils avant de commencer ? Des problèmes que je pourrais rencontrer etc ?
Merci d'avance
8 Replies
Si tu te sers de maven ou gradle tu peux simplement séparer ton code en deux et dépendre de tes modèles et de tes contrôleurs depuis ta vu ordinateur et ta vu Android
Pour ça tu met ta vue dans un projet maven, tes modèles et contrôleurs dans un autre, et ta vue Android dans un troisième et tu fais dépendre tes vues de ton projet avec les modèles
Pour ça tu fais un dossier par projet dans ton repository github
J'utilise gradle pour Android mais je n'utilise pas d'outils pour l'application pc
Et du coup ça donnerait quelque chose comme ça ?
- projetModele
- projet Android
- projetOrdi
yep
et tu met gradle dans tous les projets et tu dit a projet Android et projetOrdi de dépendre de projetModele
@Ayfri saura t'expliquer mieux que moi
Je n'ai jamais utilisé gradle hormis pour android mais c'est android studio qui gère tout.
Ce n'est pas trop compliqué d'adapter un projet simple en un projet gradle ?
et autres questions :
- Dans un projet android est ce cohérant d'avoir une conception MCV (avec des packages vue, modele, controleur) ? ou il ne faut mettre que des "Activity" ?
- D'habitude le "main" est dans mon Controleur, là le main serait le "onCreate" de l'Activity (donc de la vue ?)
Je me permets de re ping ici @Ayfri
Ah oui sorry j'avais oublié, alors j'ai jamais fait d'android du coup je saurais pas trop t'aider sorry :/
ici le probleme c’est surtour la gestion de dépendance entre projets locaux
Ah, pour adapter un projet en plusieurs sous-projects c'est pas très complexe, faut créer un
build.gradle.kts
"root" (à la racine du projet actuel), qui contiendra juste plugins { android("la version") apply false }
Tu fais tes sous-projets avec chacun un build.gradle.kts
qui contient les plugins/dépendances/repos/scripts nécessaires
Et dans le projet root ensuite tu crées un fichier settings.build.kts
qui va include(":projet1")
, include(":projet2")
...Tu peux voir un exemple ici https://github.com/Ayfri/Kore
GitHub
GitHub - Ayfri/Kore: A Kotlin library to generate Datapacks for Min...
A Kotlin library to generate Datapacks for Minecraft Java. - Ayfri/Kore