From 18ba9d88352f6d4195fd9ffdebef0ae41b056f83 Mon Sep 17 00:00:00 2001 From: Jacky Wang Date: Fri, 13 Dec 2024 15:54:43 +0800 Subject: [PATCH] [Catalyst] Specify read/write permissions for "Mobile data" NO_IFTTT=Catalyst only Bug: 368355368 Flag: com.android.settings.flags.catalyst_mobile_network_list Test: devtool Change-Id: Ie5d4b3b03f502d279de501ec84670f350ebb7f42 --- .../settings/network/MobileDataPreference.kt | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/com/android/settings/network/MobileDataPreference.kt b/src/com/android/settings/network/MobileDataPreference.kt index d1df73d711a..04649d9b809 100644 --- a/src/com/android/settings/network/MobileDataPreference.kt +++ b/src/com/android/settings/network/MobileDataPreference.kt @@ -16,6 +16,7 @@ package com.android.settings.network +import android.Manifest import android.content.Context import android.telephony.SubscriptionManager import com.android.settings.R @@ -45,6 +46,21 @@ class MobileDataPreference : override fun storage(context: Context): KeyValueStore = MobileDataStorage(context) + override fun getReadPermissions(context: Context) = + arrayOf( + // required by TelephonyManager.isDataEnabledForReason + Manifest.permission.ACCESS_NETWORK_STATE, + Manifest.permission.READ_PHONE_STATE, + Manifest.permission.MODIFY_PHONE_STATE, + Manifest.permission.READ_BASIC_PHONE_STATE, + ) + + override fun getWritePermissions(context: Context) = + arrayOf( + // required by TelephonyManager.setDataEnabledForReason + Manifest.permission.MODIFY_PHONE_STATE + ) + override fun getReadPermit(context: Context, callingPid: Int, callingUid: Int) = ReadWritePermit.ALLOW