diff --git a/.gitignore b/.gitignore
index c964d580..7e7d26c2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -15,5 +15,6 @@
local.properties
/app/build
+/app/release
-/buildSrc/build
+/buildSrc/build
\ No newline at end of file
diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro
index 94d95a2b..c4a08775 100644
--- a/app/proguard-rules.pro
+++ b/app/proguard-rules.pro
@@ -23,4 +23,18 @@
}
# @Serializable and @Polymorphic are used at runtime for polymorphic serialization.
--keepattributes RuntimeVisibleAnnotations,AnnotationDefault
\ No newline at end of file
+-keepattributes RuntimeVisibleAnnotations,AnnotationDefault
+
+# Firebase
+-keep class com.firebase.** { *; }
+-keep class org.apache.** { *; }
+-keepnames class com.fasterxml.jackson.** { *; }
+-keepnames class javax.servlet.** { *; }
+-keepnames class org.ietf.jgss.** { *; }
+-dontwarn org.w3c.dom.**
+-dontwarn org.joda.time.**
+-dontwarn org.shaded.apache.**
+-dontwarn org.ietf.jgss.**
+
+# Only necessary if you downloaded the SDK jar directly instead of from maven.
+-keep class com.shaded.fasterxml.jackson.** { *; }
\ No newline at end of file
diff --git a/app/release/app-release.aab b/app/release/app-release.aab
deleted file mode 100644
index bec47151..00000000
Binary files a/app/release/app-release.aab and /dev/null differ
diff --git a/app/release/app-release.apk b/app/release/app-release.apk
deleted file mode 100644
index 470694ce..00000000
Binary files a/app/release/app-release.apk and /dev/null differ
diff --git a/core/src/main/res/values-pt/strings.xml b/core/src/main/res/values-pt/strings.xml
index 008f4330..618f34c4 100644
--- a/core/src/main/res/values-pt/strings.xml
+++ b/core/src/main/res/values-pt/strings.xml
@@ -79,4 +79,6 @@
" não está na palavra."
" está na palavra, mas no lugar errado."
" está na palavra e no lugar correto."
+ Tela de resultados
+ $1%s perguntas corretas
\ No newline at end of file
diff --git a/core/src/main/res/values/strings.xml b/core/src/main/res/values/strings.xml
index 96a24b87..e8f83198 100644
--- a/core/src/main/res/values/strings.xml
+++ b/core/src/main/res/values/strings.xml
@@ -79,4 +79,6 @@
" is not in the target word."
" is in the word but in the wrong spot."
" is in the word and in the correct spot."
+ Results screen
+ $1%s correct questions
\ No newline at end of file
diff --git a/multi-choice-quiz/src/main/java/com/infinitepower/newquiz/multi_choice_quiz/results/MultiChoiceQuizResultsScreen.kt b/multi-choice-quiz/src/main/java/com/infinitepower/newquiz/multi_choice_quiz/results/MultiChoiceQuizResultsScreen.kt
index 1e3b3b22..bdb2c6e8 100644
--- a/multi-choice-quiz/src/main/java/com/infinitepower/newquiz/multi_choice_quiz/results/MultiChoiceQuizResultsScreen.kt
+++ b/multi-choice-quiz/src/main/java/com/infinitepower/newquiz/multi_choice_quiz/results/MultiChoiceQuizResultsScreen.kt
@@ -9,6 +9,7 @@ import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
+import androidx.compose.ui.res.stringResource
import androidx.compose.ui.unit.dp
import com.airbnb.lottie.compose.LottieAnimation
import com.airbnb.lottie.compose.LottieCompositionSpec
@@ -25,6 +26,7 @@ import com.infinitepower.newquiz.model.multi_choice_quiz.getBasicMultiChoiceQues
import com.infinitepower.newquiz.multi_choice_quiz.components.CardQuestionAnswers
import com.infinitepower.newquiz.multi_choice_quiz.components.QuizStepViewRow
import com.infinitepower.newquiz.multi_choice_quiz.destinations.MultiChoiceQuizScreenDestination
+import com.infinitepower.newquiz.core.R as CoreR
import com.ramcosta.composedestinations.annotation.Destination
import com.ramcosta.composedestinations.navigation.DestinationsNavigator
import kotlinx.serialization.decodeFromString
@@ -67,7 +69,7 @@ private fun MultiChoiceQuizResultsScreenImpl(
topBar = {
SmallTopAppBar(
title = {
- Text(text = "Results screen")
+ Text(text = stringResource(id = CoreR.string.results_screen))
}
)
}
@@ -94,7 +96,7 @@ private fun MultiChoiceQuizResultsScreenImpl(
}
Spacer(modifier = Modifier.height(spaceLarge))
Text(
- text = "${questionSteps.countCorrectQuestions()}/${questionSteps.size} correct questions",
+ text = stringResource(id = CoreR.string.results_screen, "${questionSteps.countCorrectQuestions()}/${questionSteps.size}"),
style = MaterialTheme.typography.headlineMedium
)
Spacer(modifier = Modifier.height(spaceLarge))
@@ -116,13 +118,13 @@ private fun MultiChoiceQuizResultsScreenImpl(
onClick = onPlayAgainClick,
modifier = Modifier.weight(1f)
) {
- Text(text = "Play again")
+ Text(text = stringResource(id = CoreR.string.play_again))
}
Button(
onClick = onBackClick,
modifier = Modifier.weight(1f)
) {
- Text(text = "Back")
+ Text(text = stringResource(id = CoreR.string.back))
}
}
}
@@ -145,7 +147,7 @@ private fun MultiChoiceQuizResultsScreenImpl(
},
confirmButton = {
TextButton(onClick = { setQuestionDialog(null) }) {
- Text(text = "Close")
+ Text(text = stringResource(id = CoreR.string.close))
}
}
)