Merge branch 'dev' into 'master'

Bump to latest stable AGP and dependencies

See merge request AuroraOSS/AuroraStore!504
This commit is contained in:
Rahul Patel
2025-07-14 15:58:22 +05:30
3 changed files with 67 additions and 44 deletions

View File

@@ -4,6 +4,7 @@ import android.os.Bundle
import android.view.View
import androidx.fragment.app.activityViewModels
import androidx.lifecycle.lifecycleScope
import com.aurora.Constants.PACKAGE_NAME_GMS
import com.aurora.extensions.browse
import com.aurora.store.AuroraApp
import com.aurora.store.R
@@ -91,6 +92,10 @@ class MicroGFragment : BaseFragment<FragmentOnboardingMicrogBinding>() {
private fun onEvent(event: Event) {
when (event) {
is InstallerEvent.Installed -> {
if (event.packageName == PACKAGE_NAME_GMS) {
microGViewModel.downloadCompanion()
}
if (PackageUtil.isMicroGBundleInstalled(requireContext())) {
markInstallationComplete()
}

View File

@@ -1,5 +1,5 @@
/*
* SPDX-FileCopyrightText: 2025 The Calyx Institute
* SPDX-FileCopyrightText: 2025 Aurora OSS
* SPDX-License-Identifier: GPL-3.0-or-later
*/
@@ -11,6 +11,8 @@ import androidx.lifecycle.viewModelScope
import com.aurora.Constants.PACKAGE_NAME_GMS
import com.aurora.Constants.PACKAGE_NAME_PLAY_STORE
import com.aurora.gplayapi.data.models.PlayFile
import com.aurora.store.AuroraApp
import com.aurora.store.data.event.InstallerEvent
import com.aurora.store.data.helper.DownloadHelper
import com.aurora.store.data.room.suite.ExternalApk
import dagger.hilt.android.lifecycle.HiltViewModel
@@ -31,6 +33,13 @@ class MicroGViewModel @Inject constructor(
private val downloadHelper: DownloadHelper
) : ViewModel() {
companion object {
const val MICROG_DOWNLOAD_URL = "https://github.com/microg/GmsCore/releases/download"
const val MICROG_VERSION = "v0.3.6.244735"
const val GMS_VERSION_CODE = 244735012
const val COMPANION_VERSION_CODE = 84022612
}
private val _packageNames = MutableSharedFlow<List<String>>()
val packageNames = _packageNames.asSharedFlow()
@@ -41,40 +50,39 @@ class MicroGViewModel @Inject constructor(
list.find { d -> apps.any { it == d.packageName } }
}.stateIn(viewModelScope, SharingStarted.Eagerly, null)
val externalApks = listOf<ExternalApk>(
ExternalApk(
packageName = "com.google.android.gms",
versionCode = 244735012,
versionName = "v0.3.6.244735",
val microGServiceApk = ExternalApk(
packageName = PACKAGE_NAME_GMS,
versionCode = GMS_VERSION_CODE.toLong(),
versionName = MICROG_VERSION,
displayName = "microG Services",
iconURL = "https://raw.githubusercontent.com/microg/GmsCore/refs/heads/master/play-services-core/src/main/res/mipmap-xxxhdpi/ic_app.png",
developerName = "microG Team",
fileList = listOf(
PlayFile(
url = "https://github.com/microg/GmsCore/releases/download/v0.3.6.244735/com.google.android.gms-244735012-hw.apk",
name = "com.google.android.gms-244735012-hw.apk",
url = "$MICROG_DOWNLOAD_URL/$MICROG_VERSION/$PACKAGE_NAME_GMS-$GMS_VERSION_CODE-hw.apk",
name = "$PACKAGE_NAME_GMS-$GMS_VERSION_CODE-hw.apk",
size = 32509431,
sha256 = "2f14df2974811b576bfafa6167a97e3b3032f2bd6e6ec3887a833fd2fa350dda"
)
)
),
ExternalApk(
packageName = "com.android.vending",
versionCode = 84022612,
versionName = "v0.3.6.244735",
)
val microGCompanionApk = ExternalApk(
packageName = PACKAGE_NAME_PLAY_STORE,
versionCode = COMPANION_VERSION_CODE.toLong(),
versionName = MICROG_VERSION,
displayName = "microG Companion",
iconURL = "https://raw.githubusercontent.com/microg/FakeStore/refs/heads/main/fake-store/src/main/res/mipmap-xxxhdpi/ic_app.png",
developerName = "microG Team",
fileList = listOf(
PlayFile(
url = "https://github.com/microg/GmsCore/releases/download/v0.3.6.244735/com.android.vending-84022612-hw.apk",
name = "com.android.vending-84022612-hw.apk",
url = "$MICROG_DOWNLOAD_URL/$MICROG_VERSION/$PACKAGE_NAME_PLAY_STORE-$COMPANION_VERSION_CODE-hw.apk",
name = "$PACKAGE_NAME_PLAY_STORE-$COMPANION_VERSION_CODE-hw.apk",
size = 3915551,
sha256 = "6835b09016cef0fc3469b4a36b1720427ad3f81161cf20b188f0dadb5f8594e1"
)
)
)
)
fun markAgreement(checked: Boolean) {
viewModelScope.launch {
@@ -85,18 +93,28 @@ class MicroGViewModel @Inject constructor(
fun downloadMicroG() {
viewModelScope.launch {
try {
_packageNames.emit(
listOf(
PACKAGE_NAME_GMS,
PACKAGE_NAME_PLAY_STORE
)
)
_packageNames.emit(listOf(PACKAGE_NAME_GMS))
externalApks.forEach {
// Enqueue download only if not already installed
if (!it.isInstalled(context)) {
downloadHelper.enqueueStandalone(it)
if (microGServiceApk.isInstalled(context)) {
AuroraApp.events.send(InstallerEvent.Installed(PACKAGE_NAME_GMS))
} else {
downloadHelper.enqueueStandalone(microGServiceApk)
}
} catch (e: Exception) {
e.printStackTrace()
}
}
}
fun downloadCompanion() {
viewModelScope.launch {
try {
_packageNames.emit(listOf(PACKAGE_NAME_PLAY_STORE))
if (microGCompanionApk.isInstalled(context)) {
AuroraApp.events.send(InstallerEvent.Installed(PACKAGE_NAME_PLAY_STORE))
} else {
downloadHelper.enqueueStandalone(microGCompanionApk)
}
} catch (e: Exception) {
e.printStackTrace()

View File

@@ -1,7 +1,7 @@
[versions]
activity = "1.10.1"
agCoreservice = "13.3.1.300"
androidGradlePlugin = "8.11.0"
androidGradlePlugin = "8.11.1"
androidx-hilt = "1.2.0"
androidx-junit = "1.2.1"
browser = "1.8.0"
@@ -23,7 +23,7 @@ libsu = "6.0.0"
lifecycle = "2.9.1"
material = "1.12.0"
navigation = "2.9.1"
okhttp = "5.0.0"
okhttp = "5.1.0"
preference = "1.2.1"
processPhoenix = "3.0.0"
protobufJavalite = "4.31.1"