Do not prompt for microG installs on non-huawei builds

This commit is contained in:
Rahul Patel
2025-07-15 09:27:55 +05:30
parent 3dc3c2a452
commit ee8a9ed69c
5 changed files with 41 additions and 13 deletions

View File

@@ -0,0 +1,12 @@
package com.aurora.store.util
import android.content.Context
import com.aurora.extensions.isHuawei
object FlavouredUtil : IFlavouredUtil {
override fun promptMicroGInstall(context: Context): Boolean {
return isHuawei &&
PackageUtil.hasSupportedAppGallery(context) &&
!PackageUtil.isMicroGBundleInstalled(context)
}
}

View File

@@ -0,0 +1,7 @@
package com.aurora.store.util
import android.content.Context
interface IFlavouredUtil {
fun promptMicroGInstall(context: Context): Boolean
}

View File

@@ -50,7 +50,6 @@ import com.aurora.Constants.EXODUS_SUBMIT_PAGE
import com.aurora.Constants.PACKAGE_NAME_GMS import com.aurora.Constants.PACKAGE_NAME_GMS
import com.aurora.extensions.browse import com.aurora.extensions.browse
import com.aurora.extensions.hide import com.aurora.extensions.hide
import com.aurora.extensions.isHuawei
import com.aurora.extensions.px import com.aurora.extensions.px
import com.aurora.extensions.requiresObbDir import com.aurora.extensions.requiresObbDir
import com.aurora.extensions.runOnUiThread import com.aurora.extensions.runOnUiThread
@@ -77,6 +76,7 @@ import com.aurora.store.data.model.ViewState.Loading.getDataAs
import com.aurora.store.databinding.FragmentDetailsBinding import com.aurora.store.databinding.FragmentDetailsBinding
import com.aurora.store.util.CertUtil import com.aurora.store.util.CertUtil
import com.aurora.store.util.CommonUtil import com.aurora.store.util.CommonUtil
import com.aurora.store.util.FlavouredUtil
import com.aurora.store.util.PackageUtil import com.aurora.store.util.PackageUtil
import com.aurora.store.util.Preferences import com.aurora.store.util.Preferences
import com.aurora.store.util.Preferences.PREFERENCE_SIMILAR import com.aurora.store.util.Preferences.PREFERENCE_SIMILAR
@@ -529,20 +529,9 @@ class AppDetailsFragment : BaseFragment<FragmentDetailsBinding>() {
} }
private fun purchase(app: App) { private fun purchase(app: App) {
/**
* MicroG Fragment Preconditions:
* 1. App being installed must have GSF dependency
* 2. It should be a Huawei device
* 3. Supported App Gallery should be available, i.e. v15.1.x or above
* 4. MicroG bundle should not be already installed
*
* TODO: Extract this trigger out of Vanilla & put in Huawei flavour
*/
if ( if (
app.dependencies.dependentPackages.fastAny { it == PACKAGE_NAME_GMS } && app.dependencies.dependentPackages.fastAny { it == PACKAGE_NAME_GMS } &&
isHuawei && FlavouredUtil.promptMicroGInstall(requireContext())
PackageUtil.hasSupportedAppGallery(requireContext()) &&
!PackageUtil.isMicroGBundleInstalled(requireContext())
) { ) {
return openGMSWarningFragment() return openGMSWarningFragment()
} }

View File

@@ -0,0 +1,10 @@
package com.aurora.store.util
import android.content.Context
object FlavouredUtil : IFlavouredUtil {
override fun promptMicroGInstall(context: Context): Boolean {
return false
}
}

View File

@@ -0,0 +1,10 @@
package com.aurora.store.util
import android.content.Context
object FlavouredUtil : IFlavouredUtil {
override fun promptMicroGInstall(context: Context): Boolean {
return false
}
}