[Catalyst] Implement get{Read,Write}Permissions for Data Saver

NO_IFTTT=Catalyst only

Fix: 385050976
Flag: com.android.settings.flags.catalyst_restrict_background_parent_entry
Test: devtool
Change-Id: I3799007586f5a5b26fa20f077a311313bb35e2c3
This commit is contained in:
Jason Chiu
2024-12-26 17:09:59 +08:00
parent 0fef86f3f3
commit 1c0cc38992

View File

@@ -16,12 +16,14 @@
package com.android.settings.datausage
import android.Manifest
import android.content.Context
import com.android.settings.R
import com.android.settings.widget.MainSwitchBarMetadata
import com.android.settingslib.datastore.AbstractKeyedDataObservable
import com.android.settingslib.datastore.DataChangeReason
import com.android.settingslib.datastore.KeyValueStore
import com.android.settingslib.datastore.Permissions
import com.android.settingslib.metadata.PreferenceLifecycleProvider
import com.android.settingslib.metadata.ReadWritePermit
import com.android.settingslib.metadata.SensitivityLevel
@@ -36,6 +38,12 @@ class DataSaverMainSwitchPreference : MainSwitchBarMetadata, PreferenceLifecycle
override fun storage(context: Context) = createDataStore(context)
override fun getReadPermissions(context: Context) =
Permissions.allOf(Manifest.permission.MANAGE_NETWORK_POLICY)
override fun getWritePermissions(context: Context) =
Permissions.allOf(Manifest.permission.MANAGE_NETWORK_POLICY)
override fun getReadPermit(context: Context, callingPid: Int, callingUid: Int) =
ReadWritePermit.ALLOW