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

Commit a89d9ce6 authored by Jonathan Klee's avatar Jonathan Klee
Browse files

Fix FLAG_MUTABLE not available on R

FLAG_MUTABLE was introduced with API 31 so use it only for Android
versions above API 31 (S).
parent c0ba5a55
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import android.app.PendingIntent
import android.content.Context
import android.content.Intent
import android.content.pm.PackageInstaller
import android.os.Build
import android.util.Log
import foundation.e.splitinstall.ISplitInstallService
import java.io.File
@@ -52,7 +53,12 @@ class SplitInstallBinder(
            val callbackIntent = Intent(applicationContext, SplitInstallBroadcastReceiver::class.java)
            callbackIntent.action = SplitInstallBroadcastReceiver.MODULE_INSTALLED_INTENT_ACTION

            val flags = PendingIntent.FLAG_UPDATE_CURRENT or PendingIntent.FLAG_MUTABLE
            val flags = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
                PendingIntent.FLAG_UPDATE_CURRENT or PendingIntent.FLAG_MUTABLE
            } else {
                PendingIntent.FLAG_UPDATE_CURRENT
            }

            val servicePendingIntent =
                PendingIntent.getBroadcast(applicationContext, sessionId, callbackIntent, flags)
            session.commit(servicePendingIntent.intentSender)