Implemented AssistedInject for details screen

This commit is contained in:
2024-07-29 12:07:13 +02:00
parent 08da2cbbe0
commit aab5f5e0de
25 changed files with 195 additions and 34 deletions

View File

@ -1,3 +1,5 @@
import java.util.Properties
@Suppress("DSL_SCOPE_VIOLATION") // TODO: Remove once KTIJ-19369 is fixed
plugins {
alias(libs.plugins.convention.android.library)
@ -9,10 +11,15 @@ android {
buildFeatures {
buildConfig = true
}
defaultConfig {
buildConfigField("String", "PIXABAY_API_KEY", "\"<REPLACE_WITH_PIXABAY_API_KEY>\"")
val localPropertiesFile = project.rootProject.file("local.properties")
val properties = Properties()
properties.load(localPropertiesFile.inputStream())
val apiKey = properties.getProperty("PIXABAY_API_KEY") ?: ""
buildConfigField("String", "PIXABAY_API_KEY", "\"$apiKey\"")
}
}
dependencies {

View File

@ -9,10 +9,13 @@ import dagger.hilt.android.qualifiers.ApplicationContext
import dagger.hilt.components.SingletonComponent
import dev.adriankuta.pixabay.data.room.AppDatabase
import dev.adriankuta.pixabay.data.room.dao.PixabayImagesDao
import javax.inject.Singleton
@InstallIn(SingletonComponent::class)
@Module
internal class PersistanceModule {
@Singleton
@Provides
fun provideRoomDb(@ApplicationContext context: Context): AppDatabase {
return Room.databaseBuilder(

View File

@ -75,6 +75,6 @@ internal class PixabayImageRepository @Inject constructor(
companion object {
const val NETWORK_PAGE_SIZE = 30
const val USE_CACHE_PAGER = false
const val USE_CACHE_PAGER = true
}
}