Fix storage access issue for API Level 33 & above

This commit is contained in:
Rahul Patel
2024-07-24 23:40:33 +05:30
parent a54ca7be47
commit a76266c212
4 changed files with 10 additions and 13 deletions

View File

@@ -124,15 +124,11 @@ object PackageUtil {
}
@RequiresApi(Build.VERSION_CODES.R)
fun getStorageManagerIntent(context: Context): Intent {
return if (isTv(context)) {
Intent(
Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION,
Uri.parse("package:${BuildConfig.APPLICATION_ID}")
)
} else {
Intent(Settings.ACTION_MANAGE_ALL_FILES_ACCESS_PERMISSION)
}
fun getStorageManagerIntent(): Intent {
return Intent(
Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION,
Uri.parse("package:${BuildConfig.APPLICATION_ID}")
)
}
@Throws(Exception::class)
@@ -222,7 +218,8 @@ object PackageUtil {
if (isAuroraOnlyUpdateEnabled) {
packageInfoList = packageInfoList
.filter {
val packageInstaller = packageManager.getInstallerPackageNameCompat(it.packageName)
val packageInstaller =
packageManager.getInstallerPackageNameCompat(it.packageName)
listOf(
"com.aurora.store",
"com.aurora.store.debug",

View File

@@ -563,7 +563,7 @@ class AppDetailsFragment : BaseFragment<FragmentDetailsBinding>() {
if (isRAndAbove()) {
if (!Environment.isExternalStorageManager()) {
startForStorageManagerResult.launch(
PackageUtil.getStorageManagerIntent(requireContext())
PackageUtil.getStorageManagerIntent()
)
} else {
viewModel.download(app)

View File

@@ -206,7 +206,7 @@ class PermissionsFragment : BaseFragment<FragmentOnboardingPermissionsBinding>()
private fun requestStorageManagerPermission() {
if (isRAndAbove()) {
startForStorageManagerResult.launch(
PackageUtil.getStorageManagerIntent(requireContext())
PackageUtil.getStorageManagerIntent()
)
}
}

View File

@@ -206,7 +206,7 @@ class UpdatesFragment : BaseFragment<FragmentUpdatesBinding>() {
if (isRAndAbove()) {
if (!Environment.isExternalStorageManager()) {
startForStorageManagerResult.launch(
PackageUtil.getStorageManagerIntent(requireContext())
PackageUtil.getStorageManagerIntent()
)
} else {
viewModel.download(update)