Application Android permettant de consommer un service REST pour gérer des comptes bancaires avec des fonctionnalités CRUD complètes (Create, Read, Update, Delete). L'application utilise Retrofit pour les appels API et RecyclerView pour l'affichage des données.
- ✅ Affichage des comptes : Liste des comptes bancaires avec RecyclerView
- ✅ Ajout de compte : Formulaire pour créer un nouveau compte
- ✅ Modification de compte : Édition des informations d'un compte existant
- ✅ Suppression de compte : Suppression avec confirmation
- ✅ Support JSON et XML : Basculer entre les deux formats de données
- ✅ Interface Material Design : UI moderne et intuitive
ma.projet.restclient/
├── entities/ # Classes de modèle (Compte, CompteList)
├── api/ # Interface de service REST (CompteService)
├── config/ # Configuration Retrofit (RetrofitClient)
├── repository/ # Couche d'accès aux données (CompteRepository)
├── adapter/ # Adaptateur RecyclerView (CompteAdapter)
└── MainActivity.java # Activité principale
- Retrofit 2.9.0 : Client HTTP pour Android
- Gson Converter : Conversion JSON
- Simple XML Converter : Conversion XML
- RecyclerView : Affichage de listes
- Material Design Components : Interface utilisateur moderne
- ConstraintLayout : Mise en page flexible
- Android Studio Arctic Fox ou supérieur
- Android SDK 24 (Android 7.0) minimum
- Target SDK 34 (Android 14)
- JDK 8 ou supérieur
L'application est configurée pour se connecter à un serveur REST local :
- URL de base :
http://10.0.2.2:8082/ - Endpoint :
/banque/comptes
10.0.2.2 est l'adresse pour accéder à localhost depuis un émulateur Android.
Les permissions suivantes sont requises dans AndroidManifest.xml :
INTERNET: Pour les appels réseauACCESS_NETWORK_STATE: Pour vérifier l'état de la connexion
-
Cloner le projet :
git clone <repository-url> cd reactnative
-
Ouvrir dans Android Studio :
- File → Open → Sélectionner le dossier du projet
-
Synchroniser Gradle :
- Android Studio synchronisera automatiquement les dépendances
- Ou manuellement : File → Sync Project with Gradle Files
-
Configurer le serveur REST :
- Assurez-vous que votre serveur REST est en cours d'exécution sur le port 8082
- Vérifiez que l'endpoint
/banque/comptesest accessible
-
Lancer l'application :
- Connectez un appareil Android ou lancez un émulateur
- Cliquez sur Run (
▶️ ) ou Shift+F10
{
"id": 1,
"solde": 7113.18,
"type": "COURANT",
"dateCreation": "2024-11-14"
}- COURANT : Compte courant
- EPARGNE : Compte d'épargne
- Au lancement, l'application affiche tous les comptes au format JSON
- Utilisez les boutons radio en haut pour basculer entre JSON et XML
- Cliquez sur le bouton flottant (+) en bas à droite
- Entrez le solde
- Sélectionnez le type (COURANT ou EPARGNE)
- Cliquez sur "Ajouter"
- Cliquez sur le bouton "Edit" d'un compte
- Modifiez les informations
- Cliquez sur "Modifier"
- Cliquez sur le bouton "Delete" d'un compte
- Confirmez la suppression
// Retrofit
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
implementation 'com.squareup.retrofit2:converter-simplexml:2.9.0'
implementation 'com.squareup.retrofit2:converter-jaxb:2.9.0'
implementation 'org.simpleframework:simple-xml:2.7.1'
// Android UI
implementation 'androidx.appcompat:appcompat:1.6.1'
implementation 'com.google.android.material:material:1.11.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
implementation 'androidx.recyclerview:recyclerview:1.3.2'Le fichier network_security_config.xml autorise les connexions HTTP non sécurisées vers 10.0.2.2 (localhost de l'émulateur) :
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">10.0.2.2</domain>
</domain-config>
</network-security-config>- Vérifiez que le serveur REST est en cours d'exécution
- Vérifiez que l'URL est correcte (
http://10.0.2.2:8082/) - Assurez-vous que les permissions INTERNET sont accordées
- Vérifiez que le format de réponse du serveur correspond aux annotations dans les classes
- Consultez les logs Logcat pour plus de détails
- Vérifiez votre connexion Internet
- Invalidate Caches and Restart : File → Invalidate Caches → Invalidate and Restart
- Pagination pour les grandes listes
- Recherche et filtrage des comptes
- Mode hors ligne avec cache local
- Graphiques de statistiques
- Export des données en PDF
- Authentification utilisateur
- Tests unitaires et d'intégration
Projet développé dans le cadre d'un TP sur la consommation de services REST en Android.
Ce projet est à usage éducatif.