AppsGamesFragment: lets filter out blacklisted apps
This commit is contained in:
@@ -25,6 +25,7 @@ import androidx.lifecycle.ViewModel
|
|||||||
import androidx.lifecycle.viewModelScope
|
import androidx.lifecycle.viewModelScope
|
||||||
import com.aurora.gplayapi.data.models.App
|
import com.aurora.gplayapi.data.models.App
|
||||||
import com.aurora.gplayapi.helpers.web.WebAppDetailsHelper
|
import com.aurora.gplayapi.helpers.web.WebAppDetailsHelper
|
||||||
|
import com.aurora.store.data.providers.BlacklistProvider
|
||||||
import com.aurora.store.util.PackageUtil
|
import com.aurora.store.util.PackageUtil
|
||||||
import dagger.hilt.android.lifecycle.HiltViewModel
|
import dagger.hilt.android.lifecycle.HiltViewModel
|
||||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||||
@@ -36,7 +37,8 @@ import javax.inject.Inject
|
|||||||
|
|
||||||
@HiltViewModel
|
@HiltViewModel
|
||||||
class InstalledViewModel @Inject constructor(
|
class InstalledViewModel @Inject constructor(
|
||||||
@ApplicationContext private val context: Context
|
@ApplicationContext private val context: Context,
|
||||||
|
private val blacklistProvider: BlacklistProvider,
|
||||||
) : ViewModel() {
|
) : ViewModel() {
|
||||||
|
|
||||||
private val TAG = InstalledViewModel::class.java.simpleName
|
private val TAG = InstalledViewModel::class.java.simpleName
|
||||||
@@ -52,6 +54,7 @@ class InstalledViewModel @Inject constructor(
|
|||||||
viewModelScope.launch(Dispatchers.IO) {
|
viewModelScope.launch(Dispatchers.IO) {
|
||||||
try {
|
try {
|
||||||
val packages = PackageUtil.getAllValidPackages(context)
|
val packages = PackageUtil.getAllValidPackages(context)
|
||||||
|
.filterNot { blacklistProvider.isBlacklisted(it.packageName) }
|
||||||
|
|
||||||
// Divide the list of packages into chunks of 100 & fetch app details
|
// Divide the list of packages into chunks of 100 & fetch app details
|
||||||
// 50 is a safe number to avoid hitting the rate limit or package size limit
|
// 50 is a safe number to avoid hitting the rate limit or package size limit
|
||||||
|
|||||||
Reference in New Issue
Block a user