Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ff1c1e13 authored by Abhishek Aggarwal's avatar Abhishek Aggarwal
Browse files

Applounge: Properly Inject broadcast reciever

parent 8a30b426
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -76,6 +76,9 @@ class AppLoungeApplication : Application(), Configuration.Provider {
    @Inject
    lateinit var sessionRepository: SessionRepository

    @Inject
    lateinit var pkgManagerBR: PkgManagerBR

    @RequiresApi(Build.VERSION_CODES.TIRAMISU)
    override fun onCreate() {
        super.onCreate()
@@ -83,8 +86,6 @@ class AppLoungeApplication : Application(), Configuration.Provider {
        Thread.setDefaultUncaughtExceptionHandler(uncaughtExceptionHandler)

        InstallWorkManager.context = this
        // Register broadcast receiver for package manager
        val pkgManagerBR = object : PkgManagerBR() {}
        registerReceiver(pkgManagerBR, appLoungePackageManager.getFilter(), RECEIVER_EXPORTED)

        val currentVersion = runBlocking { sessionRepository.tosVersion.first() }
+6 −14
Original line number Diff line number Diff line
@@ -33,25 +33,17 @@ import timber.log.Timber
import javax.inject.Inject

@AndroidEntryPoint
open class PkgManagerBR : BroadcastReceiver() {
class PkgManagerBR @Inject constructor(
    private val appManagerWrapper: AppManagerWrapper,
    private val appLoungePackageManager: AppLoungePackageManager,
    private val faultyAppRepository: FaultyAppRepository,
    @IoCoroutineScope private val coroutineScope: CoroutineScope
) : BroadcastReceiver() {

    companion object {
        private const val DEFAULT_INSTALL_STATUS = -69
    }

    @Inject
    lateinit var appManagerWrapper: AppManagerWrapper

    @Inject
    lateinit var appLoungePackageManager: AppLoungePackageManager

    @Inject
    lateinit var faultyAppRepository: FaultyAppRepository

    @Inject
    @IoCoroutineScope
    lateinit var coroutineScope: CoroutineScope

    override fun onReceive(context: Context?, intent: Intent?) {
        val action = intent?.action
        if (context != null && action != null) {