From 95e68cbbe748f81af1113753c5b99929e3db9ea2 Mon Sep 17 00:00:00 2001 From: Guillaume Jacquart Date: Wed, 11 Oct 2023 16:36:02 +0000 Subject: epic18: Trackers control on standalone app (without Ipscrambling). --- .../foundation/e/advancedprivacy/KoinModule.kt | 27 +++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) (limited to 'app/src/main/java/foundation/e/advancedprivacy/KoinModule.kt') diff --git a/app/src/main/java/foundation/e/advancedprivacy/KoinModule.kt b/app/src/main/java/foundation/e/advancedprivacy/KoinModule.kt index 3fbb636..20cefd5 100644 --- a/app/src/main/java/foundation/e/advancedprivacy/KoinModule.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/KoinModule.kt @@ -22,6 +22,8 @@ import android.os.Process import foundation.e.advancedprivacy.core.coreModule import foundation.e.advancedprivacy.data.repositories.LocalStateRepository import foundation.e.advancedprivacy.domain.entities.ApplicationDescription +import foundation.e.advancedprivacy.domain.entities.CHANNEL_TRACKER_FLAG +import foundation.e.advancedprivacy.domain.entities.NotificationContent import foundation.e.advancedprivacy.domain.entities.ProfileType import foundation.e.advancedprivacy.domain.usecases.AppListUseCase import foundation.e.advancedprivacy.domain.usecases.FakeLocationStateUseCase @@ -39,7 +41,10 @@ import foundation.e.advancedprivacy.features.location.FakeLocationViewModel import foundation.e.advancedprivacy.features.trackers.TrackersViewModel import foundation.e.advancedprivacy.features.trackers.apptrackers.AppTrackersViewModel import foundation.e.advancedprivacy.ipscrambler.ipScramblerModule -import foundation.e.advancedprivacy.permissions.externalinterfaces.PermissionsPrivacyModule +import foundation.e.advancedprivacy.permissions.externalinterfaces.PermissionsPrivacyModuleImpl +import foundation.e.advancedprivacy.trackers.domain.externalinterfaces.TrackersServiceSupervisor +import foundation.e.advancedprivacy.trackers.service.TrackersServiceSupervisorImpl +import foundation.e.advancedprivacy.trackers.service.trackerServiceModule import foundation.e.advancedprivacy.trackers.trackersModule import org.koin.android.ext.koin.androidContext import org.koin.androidx.viewmodel.dsl.viewModel @@ -49,7 +54,7 @@ import org.koin.core.qualifier.named import org.koin.dsl.module val appModule = module { - includes(coreModule, trackersModule, fakelocationModule, ipScramblerModule) + includes(coreModule, trackersModule, fakelocationModule, ipScramblerModule, trackerServiceModule) factory { androidContext().resources } single { @@ -89,6 +94,16 @@ val appModule = module { ) } + single(named("notificationTrackerFlag")) { + NotificationContent( + channelId = CHANNEL_TRACKER_FLAG, + icon = R.drawable.ic_e_app_logo, + title = R.string.notifications_tracker_title, + description = R.string.notifications_tracker_content, + pendingIntent = null + ) + } + single { CityDataSource } singleOf(::AppListUseCase) @@ -120,7 +135,13 @@ val appModule = module { singleOf(::TrackersStatisticsUseCase) single { - PermissionsPrivacyModule(context = androidContext()) + PermissionsPrivacyModuleImpl(context = androidContext()) + } + + single { + TrackersServiceSupervisorImpl( + context = androidContext(), + ) } viewModel { parameters -> -- cgit v1.2.3