From 2c6f66eabdf6f25c660b32240a8df1e63b99cf7c Mon Sep 17 00:00:00 2001 From: tonyfages Date: Fri, 22 Mar 2024 17:38:15 +0100 Subject: [PATCH] implementation api start --- Android/VeraxApplication/app/build.gradle.kts | 6 +++++ .../app/src/main/AndroidManifest.xml | 3 ++- .../example/veraxapplication/MainActivity.kt | 11 ++++++---- .../veraxapplication/modele/ApiClient.kt | 22 +++++++++++++++++++ .../veraxapplication/modele/ApiService.kt | 10 +++++++++ .../veraxapplication/ui/article/Article.kt | 7 +++--- 6 files changed, 50 insertions(+), 9 deletions(-) create mode 100644 Android/VeraxApplication/app/src/main/java/com/example/veraxapplication/modele/ApiClient.kt create mode 100644 Android/VeraxApplication/app/src/main/java/com/example/veraxapplication/modele/ApiService.kt diff --git a/Android/VeraxApplication/app/build.gradle.kts b/Android/VeraxApplication/app/build.gradle.kts index 114550b..8998151 100644 --- a/Android/VeraxApplication/app/build.gradle.kts +++ b/Android/VeraxApplication/app/build.gradle.kts @@ -51,6 +51,11 @@ android { dependencies { + // Retrofit + implementation ("com.squareup.retrofit2:retrofit:2.9.0") + implementation ("com.squareup.retrofit2:converter-gson:2.9.0") + + implementation("androidx.core:core-ktx:1.10.1") implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.6.1") implementation("androidx.activity:activity-compose:1.7.0") @@ -59,6 +64,7 @@ dependencies { implementation("androidx.compose.ui:ui-graphics") implementation("androidx.compose.ui:ui-tooling-preview") implementation("androidx.compose.material3:material3") + implementation("com.google.firebase:firebase-crashlytics-buildtools:2.9.9") testImplementation("junit:junit:4.13.2") androidTestImplementation("androidx.test.ext:junit:1.1.5") androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1") diff --git a/Android/VeraxApplication/app/src/main/AndroidManifest.xml b/Android/VeraxApplication/app/src/main/AndroidManifest.xml index cb87384..9088017 100644 --- a/Android/VeraxApplication/app/src/main/AndroidManifest.xml +++ b/Android/VeraxApplication/app/src/main/AndroidManifest.xml @@ -1,6 +1,7 @@ + xmlns:tools="http://schemas.android.com/tools" + > println(a)}) diff --git a/Android/VeraxApplication/app/src/main/java/com/example/veraxapplication/modele/ApiClient.kt b/Android/VeraxApplication/app/src/main/java/com/example/veraxapplication/modele/ApiClient.kt new file mode 100644 index 0000000..c7c58f3 --- /dev/null +++ b/Android/VeraxApplication/app/src/main/java/com/example/veraxapplication/modele/ApiClient.kt @@ -0,0 +1,22 @@ +package com.example.veraxapplication.modele + +import retrofit2.Retrofit +import retrofit2.converter.gson.GsonConverterFactory + +object RetrofitClient { + + private const val BASE_URL = "http://181.214.189.133:9092/" + + val retrofit: Retrofit by lazy { + Retrofit.Builder() + .baseUrl(BASE_URL) + .addConverterFactory(GsonConverterFactory.create()) + .build() + } +} + +object ApiClient { + val apiService: ApiService by lazy { + RetrofitClient.retrofit.create(ApiService::class.java) + } +} \ No newline at end of file diff --git a/Android/VeraxApplication/app/src/main/java/com/example/veraxapplication/modele/ApiService.kt b/Android/VeraxApplication/app/src/main/java/com/example/veraxapplication/modele/ApiService.kt new file mode 100644 index 0000000..7ec370e --- /dev/null +++ b/Android/VeraxApplication/app/src/main/java/com/example/veraxapplication/modele/ApiService.kt @@ -0,0 +1,10 @@ +package com.example.veraxapplication.modele + +import com.example.veraxapplication.modele.articles.Article +import retrofit2.Call +import retrofit2.http.GET + +interface ApiService { + @GET("articles/") + fun getArticles(): Call> +} \ No newline at end of file diff --git a/Android/VeraxApplication/app/src/main/java/com/example/veraxapplication/ui/article/Article.kt b/Android/VeraxApplication/app/src/main/java/com/example/veraxapplication/ui/article/Article.kt index e9fca3a..b10a322 100644 --- a/Android/VeraxApplication/app/src/main/java/com/example/veraxapplication/ui/article/Article.kt +++ b/Android/VeraxApplication/app/src/main/java/com/example/veraxapplication/ui/article/Article.kt @@ -6,7 +6,6 @@ import androidx.compose.foundation.border import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size import androidx.compose.foundation.rememberScrollState @@ -20,10 +19,10 @@ import androidx.compose.ui.draw.clip import androidx.compose.ui.graphics.Color import androidx.compose.ui.layout.ContentScale import androidx.compose.ui.text.font.FontFamily +import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import coil.compose.rememberImagePainter -import coil.size.Scale import com.example.veraxapplication.modele.articles.Article import com.example.veraxapplication.ui.theme.Salmon @@ -78,13 +77,13 @@ fun AffichageUnArticle(e : Article){ .padding(5.dp, 35.dp) ) - /* + Column { for(c in e.contenus){ Text(text = c.toString(), fontSize = 15.sp, fontFamily = FontFamily.Serif, textAlign = TextAlign.Justify, modifier = Modifier.padding(10.dp)) } } - */ + } }