[Catalyst] Implement get{Read,Write}Permissions for Wi-Fi

NO_IFTTT=Catalyst only

Fix: 385268791
Flag: com.android.settings.flags.catalyst_internet_settings
Test: devtool
Change-Id: I136aacd63d079a8d3bfafba3b0aa3fd92bd582a4
This commit is contained in:
Jason Chiu
2024-12-26 11:37:04 +08:00
parent 0fef86f3f3
commit 0fe222774d

View File

@@ -16,6 +16,7 @@
package com.android.settings.wifi
import android.Manifest
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
@@ -37,6 +38,7 @@ import com.android.settingslib.WirelessUtils
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.PreferenceMetadata
import com.android.settingslib.metadata.ReadWritePermit
@@ -94,6 +96,15 @@ class WifiSwitchPreference :
return true
}
override fun getReadPermissions(context: Context) =
Permissions.allOf(Manifest.permission.ACCESS_WIFI_STATE)
override fun getWritePermissions(context: Context) =
Permissions.anyOf(
Manifest.permission.NETWORK_SETTINGS,
Manifest.permission.CHANGE_WIFI_STATE,
)
override fun getReadPermit(context: Context, callingPid: Int, callingUid: Int) =
ReadWritePermit.ALLOW