Skip to content

Instantly share code, notes, and snippets.

View princessdharmy's full-sized avatar
👩‍💻
I learn how to be better everyday...

Damilola Omoyiwola princessdharmy

👩‍💻
I learn how to be better everyday...
View GitHub Profile
@InstallIn(ApplicationComponent::class)
@Module
object DatabaseModule {
/*
* The method returns the Database object
**/
@Singleton
@Provides
fun provideAppDatabase(@ApplicationContext context: Context): FootballDatabase = Room.databaseBuilder(
class CompetitionsViewModel @ViewModelInject constructor(
private val getTodayFixturesUseCase: GetTodayFixturesUseCase,
private val getCompetitionsUseCase: GetCompetitionsUseCase
) : ViewModel() {
...
}
// DataModule
@InstallIn(ApplicationComponent::class)
@Module
object DataModule {
...
}
// DatabaseModule
@InstallIn(ApplicationComponent::class)
@Module
@AndroidEntryPoint
class CompetitionsFragment : BaseFragment() {
...
/**
* This should be deleted as it's no longer needed
*/
override fun onAttach(context: Context) {
super.onAttach(context)
// Inject dagger here
@HiltAndroidApp
class MainApplication: Application()
...
apply plugin: 'kotlin-kapt'
apply plugin: 'dagger.hilt.android.plugin'
android {
...
}
dependencies {
implementation "com.google.dagger:hilt-android:${Versions.hiltVersion}"
buildscript {
...
dependencies {
...
classpath "com.google.dagger:hilt-android-gradle-plugin:${Versions.hiltGradlePluginVersion}"
}
}
class HomeActivity : BaseActivity() {
private lateinit var navController: NavController
private lateinit var appBarConfiguration: AppBarConfiguration
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setSupportActionBar(binding.toolbar)
initBinding()
}
<?xml version="1.0" encoding="utf-8"?>
<navigation xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/view_pager_nav_graph"
app:startDestination="@id/viewPager">
<fragment
android:id="@+id/viewPager"
android:name="com.example.competitiondetails.ui.ViewPagerFragment">
<?xml version="1.0" encoding="utf-8"?>
<navigation xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/bottom_nav_graph"
app:startDestination="@id/todayFixtureFragment">
<fragment
android:id="@+id/todayFixtureFragment"
android:name="com.example.competitions.ui.today.TodayFixturesFragment"
android:label="Today's Fixture" />