diff --git a/app/src/main/java/com/aurora/store/data/installer/ShizukuInstaller.kt b/app/src/main/java/com/aurora/store/data/installer/ShizukuInstaller.kt index 434c1e638..88c05d0a7 100644 --- a/app/src/main/java/com/aurora/store/data/installer/ShizukuInstaller.kt +++ b/app/src/main/java/com/aurora/store/data/installer/ShizukuInstaller.kt @@ -73,8 +73,16 @@ class ShizukuInstaller(context: Context) : SessionInstallerBase(context) { Log.i("Received session install request for $packageName") val (sessionId, session) = kotlin.runCatching { - val sessionId = - packageInstaller!!.createSession(SessionParams(SessionParams.MODE_FULL_INSTALL)) + val params = SessionParams(SessionParams.MODE_FULL_INSTALL) + + // Replace existing app (Updates) + var flags = Refine + .unsafeCast(params).installFlags + flags = flags or PackageManagerHidden.INSTALL_REPLACE_EXISTING + Refine.unsafeCast(params).installFlags = + flags + + val sessionId = packageInstaller!!.createSession(params) val iSession = IPackageInstallerSession.Stub.asInterface( iPackageInstaller.openSession(sessionId).asShizukuBinder() ) @@ -96,4 +104,4 @@ class ShizukuInstaller(context: Context) : SessionInstallerBase(context) { xInstall(sessionId, session, packageName, files) } } -} \ No newline at end of file +}