Loading Android.bp +1 −0 Original line number Diff line number Diff line Loading @@ -98,6 +98,7 @@ android_library { "SettingsLibDataStore", "SettingsLibMetadata", "SettingsLibPreference", "SettingsLibService", "aconfig_settings_flags_lib", "accessibility_settings_flags_lib", "contextualcards", Loading AndroidManifest.xml +11 −0 Original line number Diff line number Diff line Loading @@ -5299,6 +5299,17 @@ android:enabled="true" android:exported="false" /> <!-- Once b/364771256 is fixed, add android:featureFlag="com.android.settings.flags.catalyst_service". --> <!-- Permission is not yet finalized, use READ_BASIC_PHONE_STATE temporarily. --> <service android:name=".SettingsService" android:exported="true" android:permission="android.permission.READ_BASIC_PHONE_STATE"> <intent-filter> <action android:name="com.android.settingslib.PREFERENCE_SERVICE" /> </intent-filter> </service> <receiver android:name="com.android.settings.connecteddevice.audiosharing.AudioSharingReceiver" android:exported="false"> <intent-filter> Loading aconfig/settings_flag_declarations.aconfig +7 −0 Original line number Diff line number Diff line Loading @@ -63,3 +63,10 @@ flag { description: "Flag for all screens" bug: "323791114" } flag { name: "catalyst_service" namespace: "android_settings" description: "Flag for catalyst service" bug: "323791114" } src/com/android/settings/SettingsService.kt 0 → 100644 +30 −0 Original line number Diff line number Diff line /* * Copyright (C) 2024 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.settings import android.content.Intent import android.os.IBinder import com.android.settings.flags.Flags import com.android.settingslib.service.PreferenceService /** Service to expose settings APIs. */ class SettingsService : PreferenceService({ _, _, _ -> true }) { override fun onBind(intent: Intent): IBinder? { return if (!Flags.catalystService()) null else super.onBind(intent) } } Loading
Android.bp +1 −0 Original line number Diff line number Diff line Loading @@ -98,6 +98,7 @@ android_library { "SettingsLibDataStore", "SettingsLibMetadata", "SettingsLibPreference", "SettingsLibService", "aconfig_settings_flags_lib", "accessibility_settings_flags_lib", "contextualcards", Loading
AndroidManifest.xml +11 −0 Original line number Diff line number Diff line Loading @@ -5299,6 +5299,17 @@ android:enabled="true" android:exported="false" /> <!-- Once b/364771256 is fixed, add android:featureFlag="com.android.settings.flags.catalyst_service". --> <!-- Permission is not yet finalized, use READ_BASIC_PHONE_STATE temporarily. --> <service android:name=".SettingsService" android:exported="true" android:permission="android.permission.READ_BASIC_PHONE_STATE"> <intent-filter> <action android:name="com.android.settingslib.PREFERENCE_SERVICE" /> </intent-filter> </service> <receiver android:name="com.android.settings.connecteddevice.audiosharing.AudioSharingReceiver" android:exported="false"> <intent-filter> Loading
aconfig/settings_flag_declarations.aconfig +7 −0 Original line number Diff line number Diff line Loading @@ -63,3 +63,10 @@ flag { description: "Flag for all screens" bug: "323791114" } flag { name: "catalyst_service" namespace: "android_settings" description: "Flag for catalyst service" bug: "323791114" }
src/com/android/settings/SettingsService.kt 0 → 100644 +30 −0 Original line number Diff line number Diff line /* * Copyright (C) 2024 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.settings import android.content.Intent import android.os.IBinder import com.android.settings.flags.Flags import com.android.settingslib.service.PreferenceService /** Service to expose settings APIs. */ class SettingsService : PreferenceService({ _, _, _ -> true }) { override fun onBind(intent: Intent): IBinder? { return if (!Flags.catalystService()) null else super.onBind(intent) } }