Loading res/values/strings.xml +2 −0 Original line number Diff line number Diff line Loading @@ -2642,6 +2642,8 @@ <string name="model_info">Model</string> <!-- Label for device's hardware revision value [CHAR LIMIT=40] --> <string name="hardware_revision">Hardware version</string> <!-- Label for device's manufactured year value [CHAR LIMIT=40] --> <string name="manufactured_year">Manufactured year</string> <!-- About phone screen, fcc equipment id label [CHAR LIMIT=40] --> <string name="fcc_equipment_id">Equipment ID</string> <!-- About phone screen, setting option name [CHAR LIMIT=40] --> Loading res/xml/hardware_info.xml +9 −0 Original line number Diff line number Diff line Loading @@ -48,4 +48,13 @@ settings:controller="com.android.settings.deviceinfo.hardwareinfo.HardwareRevisionPreferenceController" settings:enableCopying="true"/> <!-- Manufactured year --> <Preference android:key="hardware_info_manufactured_year" android:title="@string/manufactured_year" android:summary="@string/summary_placeholder" android:selectable="false" settings:controller="com.android.settings.deviceinfo.hardwareinfo.ManufacturedYearPreferenceController" settings:enableCopying="true"/> </PreferenceScreen> src/com/android/settings/deviceinfo/hardwareinfo/HardwareInfoFeatureProvider.kt 0 → 100644 +26 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 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.deviceinfo.hardwareinfo /** * Feature provider for hardware info */ interface HardwareInfoFeatureProvider { /** * Returns the manufactured year */ val manufacturedYear: String? } No newline at end of file src/com/android/settings/deviceinfo/hardwareinfo/HardwareInfoFeatureProviderImpl.kt 0 → 100644 +24 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 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.deviceinfo.hardwareinfo /** * Feature provider for hardware info */ object HardwareInfoFeatureProviderImpl : HardwareInfoFeatureProvider { override val manufacturedYear: String? get() = null } No newline at end of file src/com/android/settings/deviceinfo/hardwareinfo/ManufacturedYearPreferenceController.kt 0 → 100644 +32 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 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.deviceinfo.hardwareinfo import android.content.Context import com.android.settings.core.BasePreferenceController import com.android.settings.overlay.FeatureFactory /** Preference controller for Manufactured Year. */ class ManufacturedYearPreferenceController(context: Context, preferenceKey: String) : BasePreferenceController(context, preferenceKey) { private val year: String? = FeatureFactory.getFactory(context).hardwareInfoFeatureProvider.manufacturedYear override fun getAvailabilityStatus(): Int = if (!year.isNullOrEmpty()) AVAILABLE else UNSUPPORTED_ON_DEVICE override fun getSummary(): CharSequence = year ?: "" } No newline at end of file Loading
res/values/strings.xml +2 −0 Original line number Diff line number Diff line Loading @@ -2642,6 +2642,8 @@ <string name="model_info">Model</string> <!-- Label for device's hardware revision value [CHAR LIMIT=40] --> <string name="hardware_revision">Hardware version</string> <!-- Label for device's manufactured year value [CHAR LIMIT=40] --> <string name="manufactured_year">Manufactured year</string> <!-- About phone screen, fcc equipment id label [CHAR LIMIT=40] --> <string name="fcc_equipment_id">Equipment ID</string> <!-- About phone screen, setting option name [CHAR LIMIT=40] --> Loading
res/xml/hardware_info.xml +9 −0 Original line number Diff line number Diff line Loading @@ -48,4 +48,13 @@ settings:controller="com.android.settings.deviceinfo.hardwareinfo.HardwareRevisionPreferenceController" settings:enableCopying="true"/> <!-- Manufactured year --> <Preference android:key="hardware_info_manufactured_year" android:title="@string/manufactured_year" android:summary="@string/summary_placeholder" android:selectable="false" settings:controller="com.android.settings.deviceinfo.hardwareinfo.ManufacturedYearPreferenceController" settings:enableCopying="true"/> </PreferenceScreen>
src/com/android/settings/deviceinfo/hardwareinfo/HardwareInfoFeatureProvider.kt 0 → 100644 +26 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 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.deviceinfo.hardwareinfo /** * Feature provider for hardware info */ interface HardwareInfoFeatureProvider { /** * Returns the manufactured year */ val manufacturedYear: String? } No newline at end of file
src/com/android/settings/deviceinfo/hardwareinfo/HardwareInfoFeatureProviderImpl.kt 0 → 100644 +24 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 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.deviceinfo.hardwareinfo /** * Feature provider for hardware info */ object HardwareInfoFeatureProviderImpl : HardwareInfoFeatureProvider { override val manufacturedYear: String? get() = null } No newline at end of file
src/com/android/settings/deviceinfo/hardwareinfo/ManufacturedYearPreferenceController.kt 0 → 100644 +32 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 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.deviceinfo.hardwareinfo import android.content.Context import com.android.settings.core.BasePreferenceController import com.android.settings.overlay.FeatureFactory /** Preference controller for Manufactured Year. */ class ManufacturedYearPreferenceController(context: Context, preferenceKey: String) : BasePreferenceController(context, preferenceKey) { private val year: String? = FeatureFactory.getFactory(context).hardwareInfoFeatureProvider.manufacturedYear override fun getAvailabilityStatus(): Int = if (!year.isNullOrEmpty()) AVAILABLE else UNSUPPORTED_ON_DEVICE override fun getSummary(): CharSequence = year ?: "" } No newline at end of file