TP N°3 : Développement Mobile avec Android et Volley
Objectif du TP
Ce TP consiste à créer une application Android qui interagit avec une base de données distante hébergée en PHP/MySQL, en utilisant la bibliothèque Volley. L'application devra permettre d'afficher et de gérer des articles enregistrés dans la base de données.
Étapes à suivre
1. Développer une application connectée à une base de données distante : - Utiliser la bibliothèque Volley pour effectuer des requêtes HTTP (GET, POST, etc.) vers un serveur PHP. - Implémenter une connexion sécurisée et des échanges de données avec une base MySQL.
2. Créer une application d'affichage des articles en CardView : - Afficher les articles enregistrés dans la base MySQL sous forme de CardView, comme dans l'application Avito. - Structurer les données de manière claire et visuelle, avec des informations essentielles telles que le titre, la description, le prix et les images.
Exemple d'affichage des articles
Voici une illustration inspirée de l'application Avito pour guider la conception des CardView : - Une carte par article avec une image principale en haut. - Un titre et une description concise sous l'image. - Un prix et des boutons d'action (ex : "Acheter", "Partager"). - Une section pour les détails supplémentaires (ex : localisation, date de publication).
FAQ
1. Comment configurer Volley pour une connexion à une base de données distante ?
Volley nécessite l'ajout d'une dépendance dans votre projet Android. Utilisez le fichier build.gradle pour inclure la bibliothèque :
implementation 'com.android.volley:volley:1.2.1'
Ensuite, créez une instance de RequestQueue pour gérer les requêtes.
2. Quels types de requêtes HTTP Volley supporte-t-il ?
Volley permet d'effectuer plusieurs types de requêtes : - GET : pour récupérer des données. - POST : pour envoyer des données au serveur. - PUT et DELETE : pour modifier ou supprimer des données. Les requêtes sont définies via des classes comme StringRequest ou JsonObjectRequest.
3. Comment organiser les données dans un CardView ?
Un CardView peut contenir plusieurs vues (TextView, ImageView, etc.) pour structurer les informations. Par exemple :
<androidx.cardview.widget.CardView>
<ImageView android:layout_width="match_parent" android:layout_height="wrap_content" ... />
<TextView android:id="@+id/title" android:layout_width="match_parent" android:layout_height="wrap_content" ... />
<TextView android:id="@+id/price" android:layout_width="match_parent" android:layout_height="wrap_content" ... />
</androidx.cardview.widget.CardView>
Utilisez un RecyclerView pour afficher dynamiquement une liste de CardView.