[Catalyst] Update SettingsService
Bug: 373895596 Flag: com.android.settings.flags.catalyst_service Test: Manual Change-Id: I64d0b7bac3415894a8478fafe09b5f5d1a0ebb51
This commit is contained in:
@@ -16,15 +16,31 @@
|
|||||||
|
|
||||||
package com.android.settings
|
package com.android.settings
|
||||||
|
|
||||||
|
import android.app.Application
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.os.IBinder
|
|
||||||
import com.android.settings.flags.Flags
|
import com.android.settings.flags.Flags
|
||||||
|
import com.android.settingslib.graph.PreferenceSetterRequest
|
||||||
|
import com.android.settingslib.ipc.ApiPermissionChecker
|
||||||
import com.android.settingslib.service.PreferenceService
|
import com.android.settingslib.service.PreferenceService
|
||||||
|
|
||||||
/** Service to expose settings APIs. */
|
/** Service to expose settings APIs. */
|
||||||
class SettingsService : PreferenceService({ _, _, _ -> true }) {
|
class SettingsService :
|
||||||
|
PreferenceService(
|
||||||
|
graphPermissionChecker = ApiPermissionChecker.alwaysAllow(),
|
||||||
|
setterPermissionChecker = SetterPermissionChecker(),
|
||||||
|
) {
|
||||||
|
|
||||||
override fun onBind(intent: Intent): IBinder? {
|
override fun onBind(intent: Intent) =
|
||||||
return if (!Flags.catalystService()) null else super.onBind(intent)
|
if (Flags.catalystService()) super.onBind(intent) else null
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Permission checker for external setter API. */
|
||||||
|
private class SetterPermissionChecker : ApiPermissionChecker<PreferenceSetterRequest> {
|
||||||
|
|
||||||
|
override fun hasPermission(
|
||||||
|
application: Application,
|
||||||
|
myUid: Int,
|
||||||
|
callingUid: Int,
|
||||||
|
request: PreferenceSetterRequest,
|
||||||
|
) = true
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user