[Catalyst] Update getRead/WritePermissions return type
NO_IFTTT=Catalyst only Bug: 374115149 Flag: com.android.settings.flags.catalyst_mobile_network_list Test: devtool Change-Id: I30c93cc1c07691c1e0498916bbdfb423fa1734a0
This commit is contained in:
@@ -24,6 +24,7 @@ import com.android.settings.network.telephony.MobileDataRepository
|
||||
import com.android.settings.network.telephony.SubscriptionRepository
|
||||
import com.android.settingslib.datastore.KeyValueStore
|
||||
import com.android.settingslib.datastore.NoOpKeyedObservable
|
||||
import com.android.settingslib.datastore.Permissions
|
||||
import com.android.settingslib.metadata.PreferenceAvailabilityProvider
|
||||
import com.android.settingslib.metadata.ReadWritePermit
|
||||
import com.android.settingslib.metadata.SensitivityLevel
|
||||
@@ -47,7 +48,7 @@ class MobileDataPreference :
|
||||
override fun storage(context: Context): KeyValueStore = MobileDataStorage(context)
|
||||
|
||||
override fun getReadPermissions(context: Context) =
|
||||
arrayOf(
|
||||
Permissions.allOf(
|
||||
// required by TelephonyManager.isDataEnabledForReason
|
||||
Manifest.permission.ACCESS_NETWORK_STATE,
|
||||
Manifest.permission.READ_PHONE_STATE,
|
||||
@@ -56,7 +57,7 @@ class MobileDataPreference :
|
||||
)
|
||||
|
||||
override fun getWritePermissions(context: Context) =
|
||||
arrayOf(
|
||||
Permissions.allOf(
|
||||
// required by TelephonyManager.setDataEnabledForReason
|
||||
Manifest.permission.MODIFY_PHONE_STATE
|
||||
)
|
||||
|
@@ -31,12 +31,13 @@ import com.android.settingslib.graph.PreferenceGetterRequest
|
||||
import com.android.settingslib.graph.PreferenceGetterResponse
|
||||
import com.android.settingslib.graph.PreferenceSetterRequest
|
||||
import com.android.settingslib.graph.PreferenceSetterResult
|
||||
import com.android.settingslib.graph.preferenceValueProto
|
||||
import com.android.settingslib.graph.proto.PreferenceProto
|
||||
import com.android.settingslib.graph.proto.PreferenceValueProto
|
||||
import com.android.settingslib.graph.getAllPermissions
|
||||
import com.android.settingslib.graph.getText
|
||||
import com.android.settingslib.graph.preferenceValueProto
|
||||
import com.android.settingslib.graph.proto.PreferenceGraphProto
|
||||
import com.android.settingslib.graph.proto.PreferenceOrGroupProto
|
||||
import com.android.settingslib.graph.proto.PreferenceProto
|
||||
import com.android.settingslib.graph.proto.PreferenceValueProto
|
||||
import com.android.settingslib.graph.toIntent
|
||||
import com.android.settingslib.metadata.SensitivityLevel
|
||||
|
||||
@@ -204,7 +205,8 @@ private fun PreferenceProto.toMetadata(
|
||||
.setWritable(persistent)
|
||||
.setLaunchIntent(launchIntent.toIntent())
|
||||
.setWriteSensitivity(sensitivity)
|
||||
.setReadPermissions(readPermissionsList)
|
||||
.setWritePermissions(writePermissionsList)
|
||||
// Returns all the permissions that are used, some of which are exclusive (e.g. p1 or p2)
|
||||
.setReadPermissions(readPermissions.getAllPermissions())
|
||||
.setWritePermissions(writePermissions.getAllPermissions())
|
||||
.build()
|
||||
}
|
||||
|
@@ -31,6 +31,7 @@ import android.service.settings.preferences.SettingsPreferenceValue
|
||||
import androidx.test.core.app.ApplicationProvider
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4
|
||||
import com.android.settings.homepage.SettingsHomepageActivity
|
||||
import com.android.settingslib.datastore.Permissions
|
||||
import com.android.settingslib.flags.Flags.FLAG_SETTINGS_CATALYST
|
||||
import com.android.settingslib.graph.PreferenceCoordinate
|
||||
import com.android.settingslib.graph.PreferenceGetterErrorCode
|
||||
@@ -156,8 +157,8 @@ class PreferenceServiceRequestTransformerTest {
|
||||
restricted = true
|
||||
persistent = true
|
||||
sensitivityLevel = SensitivityLevel.LOW_SENSITIVITY
|
||||
addReadPermissions("read_permission")
|
||||
addWritePermissions("write_permission")
|
||||
readPermissions = Permissions.allOf("read_permission").toProto()
|
||||
writePermissions = Permissions.anyOf("write_permission").toProto()
|
||||
launchIntent =
|
||||
Intent(context, SettingsHomepageActivity::class.java).toProto()
|
||||
value = preferenceValueProto { booleanValue = true }
|
||||
|
Reference in New Issue
Block a user