diff --git a/.idea/deploymentTargetSelector.xml b/.idea/deploymentTargetSelector.xml
index d603dda..eaab86c 100644
--- a/.idea/deploymentTargetSelector.xml
+++ b/.idea/deploymentTargetSelector.xml
@@ -11,6 +11,9 @@
+
+
+
\ No newline at end of file
diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 178f664..acc1db0 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -2,6 +2,7 @@ plugins {
alias(libs.plugins.android.application)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.kotlin.compose)
+ id("kotlin-kapt")
}
android {
@@ -39,7 +40,24 @@ android {
}
}
+apply(
+ plugin = "kotlin-kapt"
+)
+
dependencies {
+ implementation(libs.androidx.runtime.livedata)
+ val roomVersion = "2.5.2"
+
+
+ //annotationProcessor(libs.androidx.room.compiler)
+ implementation("androidx.room:room-common:${roomVersion}")
+ kapt("androidx.room:room-compiler:${roomVersion}")
+ implementation("androidx.room:room-runtime:${roomVersion}")
+ implementation("androidx.room:room-ktx:${roomVersion}")
+ implementation("androidx.room:room-paging:${roomVersion}")
+ //implementation(libs.androidx.room.ktx)
+
+
implementation(libs.androidx.core.ktx)
implementation(libs.androidx.lifecycle.runtime.ktx)
implementation(libs.androidx.activity.compose)
@@ -51,7 +69,7 @@ dependencies {
implementation(libs.androidx.navigation.compose)
implementation(libs.retrofit)
implementation(libs.converter.gson)
- implementation("io.coil-kt:coil-compose:2.4.0")
+ implementation(libs.coil.compose)
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.junit)
androidTestImplementation(libs.androidx.espresso.core)
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 31b2726..a8b0376 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -10,7 +10,6 @@
android:fullBackupContent="@xml/backup_rules"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
- android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.Queezer"
tools:targetApi="31">
diff --git a/app/src/main/ic_launcher-playstore.png b/app/src/main/ic_launcher-playstore.png
new file mode 100644
index 0000000..db70abc
Binary files /dev/null and b/app/src/main/ic_launcher-playstore.png differ
diff --git a/app/src/main/java/fr/univpau/queezer/MainActivity.kt b/app/src/main/java/fr/univpau/queezer/MainActivity.kt
index 65ac09f..3ab91c3 100644
--- a/app/src/main/java/fr/univpau/queezer/MainActivity.kt
+++ b/app/src/main/java/fr/univpau/queezer/MainActivity.kt
@@ -1,6 +1,7 @@
package fr.univpau.queezer
import android.os.Bundle
+import android.util.Log
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.runtime.Composable
@@ -9,25 +10,31 @@ import androidx.navigation.compose.composable
import androidx.navigation.compose.rememberNavController
import fr.univpau.queezer.screen.GameScreen
import fr.univpau.queezer.screen.HomeScreen
+import fr.univpau.queezer.screen.ScoreScreen
import fr.univpau.queezer.screen.SettingsScreen
+import fr.univpau.queezer.service.DatabaseService
+import fr.univpau.queezer.viewmodel.GameViewModel
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
+ val database: DatabaseService by lazy { DatabaseService.getDatabase(this) }
setContent {
- QueezerApp()
+ QueezerApp(database)
}
}
}
@Composable
-fun QueezerApp() {
+fun QueezerApp(database: DatabaseService) {
val navController = rememberNavController()
+ val gameViewModel = GameViewModel(database.gameDao())
NavHost(navController = navController, startDestination = "home") {
composable("home") { HomeScreen(navController) }
- composable("game") { GameScreen(navController) }
+ composable("game") { GameScreen(navController, database) }
composable("settings") { SettingsScreen(navController) }
+ composable("score") { ScoreScreen(navController, gameViewModel) }
}
}
\ No newline at end of file
diff --git a/app/src/main/java/fr/univpau/queezer/data/Game.kt b/app/src/main/java/fr/univpau/queezer/data/Game.kt
index 847cdc0..2e3791c 100644
--- a/app/src/main/java/fr/univpau/queezer/data/Game.kt
+++ b/app/src/main/java/fr/univpau/queezer/data/Game.kt
@@ -1,10 +1,14 @@
package fr.univpau.queezer.data
-import java.sql.Date
+import androidx.room.Entity
+import androidx.room.PrimaryKey
+import java.util.Date
+@Entity(tableName = "game")
data class Game(
- val settings: Settings,
- val tracks: List