Changes for July 2024

This commit is contained in:
Andy CrossGate Yan
2024-07-21 17:16:11 +08:00
parent 1855253db2
commit b6248125ef
96 changed files with 2462 additions and 756 deletions

View File

@@ -1,7 +1,7 @@
From e76618742f7398aa64c1e45b27a2dbcbcb3f20e1 Mon Sep 17 00:00:00 2001
From 8162af1310582494ce99ee502abacb1f937d5596 Mon Sep 17 00:00:00 2001
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
Date: Thu, 22 Sep 2022 12:37:50 +0000
Subject: [PATCH 1/8] TrebleSettings: Screen resolution & refresh rate
Subject: [PATCH 1/9] TrebleSettings: Screen resolution & refresh rate
Change-Id: I4a4679cdb6d4ede55479e9ab2f014342025b0fec
---
@@ -20,10 +20,10 @@ Change-Id: I4a4679cdb6d4ede55479e9ab2f014342025b0fec
create mode 100644 src/com/android/settings/treble/TrebleSettings.java
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index deb24592737..e5edf4977df 100644
index a6bb19fe58c..6fafd10f702 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -248,6 +248,14 @@
@@ -252,6 +252,14 @@
android:value="com.android.settings.shortcut.CreateShortcut" />
</activity>
@@ -67,10 +67,10 @@ index 27e9639122a..ef25f9971c4 100755
<string name="menu_key_communal" translatable="false">top_level_communal</string>
<string name="menu_key_connected_devices" translatable="false">top_level_connected_devices</string>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 8fcbcbf6b49..48f0b763431 100644
index 61aa1b265e6..5a5edf00ebf 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -7178,6 +7178,16 @@
@@ -7345,6 +7345,16 @@
<!-- Text to describe the dashboard fragment title [CHAR LIMIT=16] -->
<string name="dashboard_title">Settings</string>
@@ -88,7 +88,7 @@ index 8fcbcbf6b49..48f0b763431 100644
<string name="network_dashboard_title">Network &amp; internet</string>
<!-- Summary for Network and Internet settings, explaining it contains mobile, wifi setting and data usage settings [CHAR LIMIT=NONE]-->
diff --git a/res/xml/top_level_settings.xml b/res/xml/top_level_settings.xml
index d050a1f2747..258a567f561 100644
index 31c6af3c40b..7fb404789ad 100644
--- a/res/xml/top_level_settings.xml
+++ b/res/xml/top_level_settings.xml
@@ -20,6 +20,15 @@

View File

@@ -1,7 +1,7 @@
From 7cff85caaabd92c499d24c2915d7735d0b5cad4d Mon Sep 17 00:00:00 2001
From 2ddbe3a19b8775a02dfb933033d71e9e0b138260 Mon Sep 17 00:00:00 2001
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
Date: Sat, 24 Sep 2022 03:38:41 +0000
Subject: [PATCH 2/8] TrebleSettings: Basic audio and display fixes
Subject: [PATCH 2/9] TrebleSettings: Basic audio and display fixes
- Alternative audio policy
- Disable soundvolume effect
@@ -21,10 +21,10 @@ Change-Id: I4f22dcd9c59c40b3fd70ba642db35b9466467b7d
create mode 100644 src/com/android/settings/treble/UseAlternativeBacklightScalePreferenceController.java
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 48f0b763431..0961c045330 100644
index 5a5edf00ebf..366194bf500 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -7182,11 +7182,19 @@
@@ -7349,11 +7349,19 @@
<string name="treble_settings">Treble settings</string>
<!-- Summary for Treble settings [CHAR LIMIT=NONE]-->
<string name="treble_settings_summary">Fixes &amp; tweaks for GSIs</string>

View File

@@ -1,25 +1,25 @@
From fb208d5ca890f31bfff228836a548f3aacf3b061 Mon Sep 17 00:00:00 2001
From e588ad066e470f910d44877bf506b2ecae1cbc59 Mon Sep 17 00:00:00 2001
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
Date: Tue, 11 Oct 2022 10:29:36 +0000
Subject: [PATCH 3/8] TrebleSettings: IMS
Subject: [PATCH 3/9] TrebleSettings: IMS
Change-Id: Id7a12e150d4a3dc988f8ce1a888ad88443fa0ea4
---
Android.bp | 1 +
res/values/strings.xml | 9 +
res/xml/treble_settings.xml | 13 ++
.../InstallImsApkPreferenceController.java | 209 ++++++++++++++++++
.../InstallImsApkPreferenceController.java | 203 ++++++++++++++++++
...VolteAvailabilityPreferenceController.java | 59 +++++
.../settings/treble/TrebleSettings.java | 2 +
6 files changed, 293 insertions(+)
6 files changed, 287 insertions(+)
create mode 100644 src/com/android/settings/treble/InstallImsApkPreferenceController.java
create mode 100644 src/com/android/settings/treble/OverrideVolteAvailabilityPreferenceController.java
diff --git a/Android.bp b/Android.bp
index 7b7f7f42453..ab2d10cdb08 100644
index b5018960056..d545aecda9e 100644
--- a/Android.bp
+++ b/Android.bp
@@ -109,6 +109,7 @@ android_library {
@@ -117,6 +117,7 @@ android_library {
"org.lineageos.platform.internal",
"LineagePreferenceLib",
"vendor.lineage.fastcharge-V1.0-java",
@@ -28,10 +28,10 @@ index 7b7f7f42453..ab2d10cdb08 100644
plugins: ["androidx.room_room-compiler-plugin"],
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 0961c045330..029308db35b 100644
index 366194bf500..ff534fe0152 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -7186,6 +7186,8 @@
@@ -7353,6 +7353,8 @@
<string name="treble_settings_category_name_audio">Audio</string>
<!-- Display category name [CHAR LIMIT=none] -->
<string name="treble_settings_category_name_display">Display</string>
@@ -40,7 +40,7 @@ index 0961c045330..029308db35b 100644
<!-- Treble settings screen, use alternative audio policy title -->
<string name="use_alternative_audio_policy_title">Use alternative audio policy</string>
@@ -7195,6 +7197,13 @@
@@ -7362,6 +7364,13 @@
<string name="screen_resolution_refresh_rate_title">Screen resolution &amp; refresh rate</string>
<!-- Treble settings screen, use alternative backlight scale title -->
<string name="use_alternative_backlight_scale_title">Use alternative backlight scale</string>
@@ -78,10 +78,10 @@ index 336137c95f1..09e6bc5d006 100644
</PreferenceScreen>
diff --git a/src/com/android/settings/treble/InstallImsApkPreferenceController.java b/src/com/android/settings/treble/InstallImsApkPreferenceController.java
new file mode 100644
index 00000000000..6a63cbf1bf3
index 00000000000..e86884e86cd
--- /dev/null
+++ b/src/com/android/settings/treble/InstallImsApkPreferenceController.java
@@ -0,0 +1,209 @@
@@ -0,0 +1,203 @@
+package com.android.settings.treble;
+
+import android.app.DownloadManager;
@@ -167,11 +167,8 @@ index 00000000000..6a63cbf1bf3
+ case "mtk_q":
+ summary += "MediaTek Q";
+ break;
+ case "mtk_r":
+ summary += "MediaTek R";
+ break;
+ case "mtk_s":
+ summary += "MediaTek S";
+ case "mtk_r+":
+ summary += "MediaTek R+";
+ break;
+ default:
+ break;
@@ -186,19 +183,16 @@ index 00000000000..6a63cbf1bf3
+ public boolean onPreferenceClick(Preference preference) {
+ switch (mImsType) {
+ case "qcom":
+ mImsApkUrl = "https://treble.phh.me/ims-caf-u.apk";
+ mImsApkUrl = "https://treble.phh.me/ims-caf-u-resigned.apk";
+ break;
+ case "mtk_p":
+ mImsApkUrl = "https://treble.phh.me/stable/ims-mtk-p.apk";
+ mImsApkUrl = "https://treble.phh.me/stable/ims-mtk-p-resigned.apk";
+ break;
+ case "mtk_q":
+ mImsApkUrl = "https://treble.phh.me/stable/ims-mtk-q.apk";
+ mImsApkUrl = "https://treble.phh.me/stable/ims-mtk-q-resigned.apk";
+ break;
+ case "mtk_r":
+ mImsApkUrl = "https://treble.phh.me/stable/ims-mtk-r.apk";
+ break;
+ case "mtk_s":
+ mImsApkUrl = "https://treble.phh.me/stable/ims-mtk-s.apk";
+ case "mtk_r+":
+ mImsApkUrl = "https://treble.phh.me/ims-mtk-u-resigned.apk";
+ break;
+ default:
+ break;
@@ -279,10 +273,10 @@ index 00000000000..6a63cbf1bf3
+ return "mtk_p";
+ } else if (hidlManager.get("vendor.mediatek.hardware.mtkradioex@1.0::IMtkRadioEx", slot) != null) {
+ return "mtk_q";
+ } else if (hidlManager.get("vendor.mediatek.hardware.mtkradioex@2.0::IMtkRadioEx", slot) != null) {
+ return "mtk_r";
+ } else if (hidlManager.get("vendor.mediatek.hardware.mtkradioex@3.0::IMtkRadioEx", slot) != null) {
+ return "mtk_s";
+ } else if (hidlManager.get("vendor.mediatek.hardware.mtkradioex@2.0::IMtkRadioEx", slot) != null
+ || hidlManager.get("vendor.mediatek.hardware.mtkradioex@3.0::IMtkRadioEx", slot) != null
+ || ServiceManager.getService("vendor.mediatek.hardware.mtkradioex.ims.IMtkRadioExIms/" + slot) != null) {
+ return "mtk_r+";
+ }
+ }
+ } catch (RemoteException ex) {}

View File

@@ -1,7 +1,7 @@
From 7168689803383166446266171d8ac0e54c052b41 Mon Sep 17 00:00:00 2001
From a15199ab73e7f205ef16a287afd973b062ae9ac6 Mon Sep 17 00:00:00 2001
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
Date: Sat, 10 Dec 2022 12:04:37 +0000
Subject: [PATCH 4/8] TrebleSettings: Disable A2DP offload
Subject: [PATCH 4/9] TrebleSettings: Disable A2DP offload
Change-Id: I737f49d146f83d96793f4436850529e3c528acbe
---
@@ -13,10 +13,10 @@ Change-Id: I737f49d146f83d96793f4436850529e3c528acbe
create mode 100644 src/com/android/settings/treble/DisableA2DPOffloadPreferenceController.java
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 029308db35b..ccdc9e04c3c 100644
index ff534fe0152..26980abbd58 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -7193,6 +7193,8 @@
@@ -7360,6 +7360,8 @@
<string name="use_alternative_audio_policy_title">Use alternative audio policy</string>
<!-- Treble settings screen, disable soundvolume effect title -->
<string name="disable_soundvolume_effect_title">Disable soundvolume effect</string>

View File

@@ -1,7 +1,7 @@
From 9111f1b57b14ad679422fe170e333088b20e0838 Mon Sep 17 00:00:00 2001
From 1d11999625604110b51d31127a6b8e4a43ad6a5f Mon Sep 17 00:00:00 2001
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
Date: Sat, 10 Dec 2022 14:16:50 +0000
Subject: [PATCH 5/8] TrebleSettings: Alternative audio jack detection
Subject: [PATCH 5/9] TrebleSettings: Alternative audio jack detection
Change-Id: I5d6d48f26a4a2134fd6edf996eca89a1fc42e6de
---
@@ -13,10 +13,10 @@ Change-Id: I5d6d48f26a4a2134fd6edf996eca89a1fc42e6de
create mode 100644 src/com/android/settings/treble/UseAlternativeAudioJackDetectionPreferenceController.java
diff --git a/res/values/strings.xml b/res/values/strings.xml
index ccdc9e04c3c..62478ec1a6c 100644
index 26980abbd58..08b953b9ccf 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -7195,6 +7195,8 @@
@@ -7362,6 +7362,8 @@
<string name="disable_soundvolume_effect_title">Disable soundvolume effect</string>
<!-- Treble settings screen, disable A2DP offload title -->
<string name="disable_a2dp_offload_title">Disable A2DP offload</string>

View File

@@ -1,7 +1,7 @@
From f41885c3103b205838b186ca47c38da3d1aa837e Mon Sep 17 00:00:00 2001
From 0640b1aa050f80bc8b095e2d78a134402fb0c0de Mon Sep 17 00:00:00 2001
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
Date: Sat, 17 Dec 2022 10:29:05 +0000
Subject: [PATCH 6/8] TrebleSettings: Override minimum brightness
Subject: [PATCH 6/9] TrebleSettings: Override minimum brightness
Change-Id: I6d621f7dd04b675b6e2e851a5e474dc9a9841eb0
---
@@ -13,10 +13,10 @@ Change-Id: I6d621f7dd04b675b6e2e851a5e474dc9a9841eb0
create mode 100644 src/com/android/settings/treble/OverrideMinimumBrightnessPreferenceController.java
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 62478ec1a6c..724b0393626 100644
index 08b953b9ccf..2dd1ddeb5a8 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -7201,6 +7201,8 @@
@@ -7368,6 +7368,8 @@
<string name="screen_resolution_refresh_rate_title">Screen resolution &amp; refresh rate</string>
<!-- Treble settings screen, use alternative backlight scale title -->
<string name="use_alternative_backlight_scale_title">Use alternative backlight scale</string>

View File

@@ -1,7 +1,7 @@
From 3f42e26678aa5b089011c613f371bbe44e99812c Mon Sep 17 00:00:00 2001
From 36aebacf72f4366a1e6bc2c3e5f60c6596527752 Mon Sep 17 00:00:00 2001
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
Date: Sat, 17 Dec 2022 11:00:38 +0000
Subject: [PATCH 7/8] TrebleSettings: Override navbar availability
Subject: [PATCH 7/9] TrebleSettings: Override navbar availability
Change-Id: I7c771caf6274543fed23a8cc47411bf8c369ac2c
---
@@ -13,10 +13,10 @@ Change-Id: I7c771caf6274543fed23a8cc47411bf8c369ac2c
create mode 100644 src/com/android/settings/treble/OverrideNavbarAvailabilityPreferenceController.java
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 724b0393626..843fe444dc9 100644
index 2dd1ddeb5a8..cd79f4d3ed3 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -7188,6 +7188,8 @@
@@ -7355,6 +7355,8 @@
<string name="treble_settings_category_name_display">Display</string>
<!-- IMS category name [CHAR LIMIT=none] -->
<string name="treble_settings_category_name_ims">IMS</string>
@@ -25,7 +25,7 @@ index 724b0393626..843fe444dc9 100644
<!-- Treble settings screen, use alternative audio policy title -->
<string name="use_alternative_audio_policy_title">Use alternative audio policy</string>
@@ -7210,6 +7212,8 @@
@@ -7377,6 +7379,8 @@
<string name="install_ims_apk_toast_completed">IMS APK installed. Reboot required.</string>
<!-- Treble settings screen, override VoLTE availability title -->
<string name="override_volte_availability_title">Override VoLTE availability</string>

View File

@@ -0,0 +1,119 @@
From 94c32f8dc4f427938340a1b5c704153561e44e06 Mon Sep 17 00:00:00 2001
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
Date: Sun, 26 May 2024 21:32:44 +0800
Subject: [PATCH 8/9] TrebleSettings: Disable SF HWC backpressure
Change-Id: I4d6a1d43222a8e4dec202056a14b1b1ce41e33d3
---
res/values/strings.xml | 4 ++
res/xml/treble_settings.xml | 5 ++
...SfHwcBackpressurePreferenceController.java | 53 +++++++++++++++++++
.../settings/treble/TrebleSettings.java | 1 +
4 files changed, 63 insertions(+)
create mode 100644 src/com/android/settings/treble/DisableSfHwcBackpressurePreferenceController.java
diff --git a/res/values/strings.xml b/res/values/strings.xml
index cd79f4d3ed3..b9bed8d56b5 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -7372,6 +7372,10 @@
<string name="use_alternative_backlight_scale_title">Use alternative backlight scale</string>
<!-- Treble settings screen, override minimum brightness title -->
<string name="override_minimum_brightness_title">Override minimum brightness</string>
+ <!-- Treble settings screen, disable SF HWC backpressure title -->
+ <string name="disable_sf_hwc_backpressure_title">Disable SF HWC backpressure</string>
+ <!-- Treble settings screen, disable SF HWC backpressure summary -->
+ <string name="disable_sf_hwc_backpressure_summary">Might improve rendering performance</string>
<!-- Treble settings screen, install IMS APK title -->
<string name="install_ims_apk_title">Install IMS APK</string>
<!-- Treble settings screen, install IMS APK toasts -->
diff --git a/res/xml/treble_settings.xml b/res/xml/treble_settings.xml
index 250a8ee75ae..4e3bef9b644 100644
--- a/res/xml/treble_settings.xml
+++ b/res/xml/treble_settings.xml
@@ -42,6 +42,11 @@
android:key="override_minimum_brightness"
android:title="@string/override_minimum_brightness_title" />
+ <SwitchPreference
+ android:key="disable_sf_hwc_backpressure"
+ android:title="@string/disable_sf_hwc_backpressure_title"
+ android:summary="@string/disable_sf_hwc_backpressure_summary" />
+
</PreferenceCategory>
<PreferenceCategory
diff --git a/src/com/android/settings/treble/DisableSfHwcBackpressurePreferenceController.java b/src/com/android/settings/treble/DisableSfHwcBackpressurePreferenceController.java
new file mode 100644
index 00000000000..8ba77738b58
--- /dev/null
+++ b/src/com/android/settings/treble/DisableSfHwcBackpressurePreferenceController.java
@@ -0,0 +1,53 @@
+package com.android.settings.treble;
+
+import android.content.Context;
+import android.os.SystemProperties;
+
+import androidx.preference.Preference;
+import androidx.preference.PreferenceScreen;
+import androidx.preference.SwitchPreference;
+
+import com.android.settings.core.BasePreferenceController;
+
+public class DisableSfHwcBackpressurePreferenceController extends BasePreferenceController
+ implements Preference.OnPreferenceChangeListener {
+
+ private static final String DISABLE_SF_HWC_BACKPRESSURE_KEY = "disable_sf_hwc_backpressure";
+ private static final String TREBLE_ENABLE_SF_HWC_BACKPRESSURE_PROPERTY = "persist.sys.treble.enable_sf_hwc_backpressure";
+
+ private SwitchPreference mSwitchPreference;
+
+ public DisableSfHwcBackpressurePreferenceController(Context context) {
+ super(context, DISABLE_SF_HWC_BACKPRESSURE_KEY);
+ }
+
+ @Override
+ public int getAvailabilityStatus() {
+ return AVAILABLE;
+ }
+
+ @Override
+ public String getPreferenceKey() {
+ return DISABLE_SF_HWC_BACKPRESSURE_KEY;
+ }
+
+ @Override
+ public void displayPreference(PreferenceScreen screen) {
+ mSwitchPreference = screen.findPreference(getPreferenceKey());
+ super.displayPreference(screen);
+ }
+
+ @Override
+ public void updateState(Preference preference) {
+ boolean checked = !SystemProperties.getBoolean(TREBLE_ENABLE_SF_HWC_BACKPRESSURE_PROPERTY, true);
+ mSwitchPreference.setChecked(checked);
+ }
+
+ @Override
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ SystemProperties.set(TREBLE_ENABLE_SF_HWC_BACKPRESSURE_PROPERTY, String.valueOf(!(boolean) newValue));
+ mSwitchPreference.setChecked((boolean) newValue);
+ return true;
+ }
+
+}
diff --git a/src/com/android/settings/treble/TrebleSettings.java b/src/com/android/settings/treble/TrebleSettings.java
index 634b7ce3ce1..f72a3cb9ed7 100644
--- a/src/com/android/settings/treble/TrebleSettings.java
+++ b/src/com/android/settings/treble/TrebleSettings.java
@@ -39,6 +39,7 @@ public class TrebleSettings extends DashboardFragment {
controllers.add(new ScreenResolutionRefreshRatePreferenceController(context));
controllers.add(new UseAlternativeBacklightScalePreferenceController(context));
controllers.add(new OverrideMinimumBrightnessPreferenceController(context));
+ controllers.add(new DisableSfHwcBackpressurePreferenceController(context));
controllers.add(new InstallImsApkPreferenceController(context));
controllers.add(new OverrideVolteAvailabilityPreferenceController(context));
controllers.add(new OverrideNavbarAvailabilityPreferenceController(context));
--
2.34.1

View File

@@ -1,133 +0,0 @@
From 2f6f5ee5ed0825f3075179b0d40bbee788792274 Mon Sep 17 00:00:00 2001
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
Date: Sat, 17 Dec 2022 14:30:52 +0000
Subject: [PATCH 8/8] TrebleSettings: Securize on-demand
Change-Id: I76f54620277ccdc41636d74d1afa6330c382ce6a
---
res/values/strings.xml | 6 +++
res/xml/treble_settings.xml | 10 ++++
.../treble/SecurizePreferenceController.java | 53 +++++++++++++++++++
.../settings/treble/TrebleSettings.java | 1 +
4 files changed, 70 insertions(+)
create mode 100644 src/com/android/settings/treble/SecurizePreferenceController.java
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 843fe444dc9..f7940dce85d 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -7188,6 +7188,8 @@
<string name="treble_settings_category_name_display">Display</string>
<!-- IMS category name [CHAR LIMIT=none] -->
<string name="treble_settings_category_name_ims">IMS</string>
+ <!-- System category name [CHAR LIMIT=none] -->
+ <string name="treble_settings_category_name_system">System</string>
<!-- UI category name [CHAR LIMIT=none] -->
<string name="treble_settings_category_name_ui">UI</string>
@@ -7212,6 +7214,10 @@
<string name="install_ims_apk_toast_completed">IMS APK installed. Reboot required.</string>
<!-- Treble settings screen, override VoLTE availability title -->
<string name="override_volte_availability_title">Override VoLTE availability</string>
+ <!-- Treble settings screen, securize title -->
+ <string name="securize_title">Spoof system properties</string>
+ <!-- Treble settings screen, securize summary -->
+ <string name="securize_summary">For better chances of passing SafetyNet\nMight cause bootloop on some devices</string>
<!-- Treble settings screen, override navbar availability title -->
<string name="override_navbar_availability_title">Override navigation bar availability</string>
diff --git a/res/xml/treble_settings.xml b/res/xml/treble_settings.xml
index 250a8ee75ae..1f24352421f 100644
--- a/res/xml/treble_settings.xml
+++ b/res/xml/treble_settings.xml
@@ -57,6 +57,16 @@
</PreferenceCategory>
+ <PreferenceCategory
+ android:title="@string/treble_settings_category_name_system">
+
+ <SwitchPreference
+ android:key="securize"
+ android:title="@string/securize_title"
+ android:summary="@string/securize_summary" />
+
+ </PreferenceCategory>
+
<PreferenceCategory
android:title="@string/treble_settings_category_name_ui">
diff --git a/src/com/android/settings/treble/SecurizePreferenceController.java b/src/com/android/settings/treble/SecurizePreferenceController.java
new file mode 100644
index 00000000000..0b59bbad81c
--- /dev/null
+++ b/src/com/android/settings/treble/SecurizePreferenceController.java
@@ -0,0 +1,53 @@
+package com.android.settings.treble;
+
+import android.content.Context;
+import android.os.SystemProperties;
+
+import androidx.preference.Preference;
+import androidx.preference.PreferenceScreen;
+import androidx.preference.SwitchPreference;
+
+import com.android.settings.core.BasePreferenceController;
+
+public class SecurizePreferenceController extends BasePreferenceController
+ implements Preference.OnPreferenceChangeListener {
+
+ private static final String SECURIZE_KEY = "securize";
+ private static final String SECURIZE_PROPERTY = "persist.sys.treble.securize";
+
+ private SwitchPreference mSwitchPreference;
+
+ public SecurizePreferenceController(Context context) {
+ super(context, SECURIZE_KEY);
+ }
+
+ @Override
+ public int getAvailabilityStatus() {
+ return AVAILABLE;
+ }
+
+ @Override
+ public String getPreferenceKey() {
+ return SECURIZE_KEY;
+ }
+
+ @Override
+ public void displayPreference(PreferenceScreen screen) {
+ mSwitchPreference = screen.findPreference(getPreferenceKey());
+ super.displayPreference(screen);
+ }
+
+ @Override
+ public void updateState(Preference preference) {
+ boolean checked = SystemProperties.getBoolean(SECURIZE_PROPERTY, false);
+ mSwitchPreference.setChecked(checked);
+ }
+
+ @Override
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ SystemProperties.set(SECURIZE_PROPERTY, String.valueOf((boolean) newValue));
+ mSwitchPreference.setChecked((boolean) newValue);
+ return true;
+ }
+
+}
diff --git a/src/com/android/settings/treble/TrebleSettings.java b/src/com/android/settings/treble/TrebleSettings.java
index 634b7ce3ce1..149c18f2315 100644
--- a/src/com/android/settings/treble/TrebleSettings.java
+++ b/src/com/android/settings/treble/TrebleSettings.java
@@ -41,6 +41,7 @@ public class TrebleSettings extends DashboardFragment {
controllers.add(new OverrideMinimumBrightnessPreferenceController(context));
controllers.add(new InstallImsApkPreferenceController(context));
controllers.add(new OverrideVolteAvailabilityPreferenceController(context));
+ controllers.add(new SecurizePreferenceController(context));
controllers.add(new OverrideNavbarAvailabilityPreferenceController(context));
return controllers;
}
--
2.34.1

View File

@@ -0,0 +1,61 @@
From e6f53c10e76522ec31519264c40d95d872542f47 Mon Sep 17 00:00:00 2001
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
Date: Wed, 17 Jul 2024 22:35:50 +0800
Subject: [PATCH 9/9] TrebleSettings: Securize placeholder
Leave this Play Integrity mess to the professionals
Change-Id: Ic30a78f5417925e1c8899ce91c37fa41b2ff15c2
---
res/values/strings.xml | 6 ++++++
res/xml/treble_settings.xml | 10 ++++++++++
2 files changed, 16 insertions(+)
diff --git a/res/values/strings.xml b/res/values/strings.xml
index b9bed8d56b5..f55ee2a048d 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -7355,6 +7355,8 @@
<string name="treble_settings_category_name_display">Display</string>
<!-- IMS category name [CHAR LIMIT=none] -->
<string name="treble_settings_category_name_ims">IMS</string>
+ <!-- System category name [CHAR LIMIT=none] -->
+ <string name="treble_settings_category_name_system">System</string>
<!-- UI category name [CHAR LIMIT=none] -->
<string name="treble_settings_category_name_ui">UI</string>
@@ -7383,6 +7385,10 @@
<string name="install_ims_apk_toast_completed">IMS APK installed. Reboot required.</string>
<!-- Treble settings screen, override VoLTE availability title -->
<string name="override_volte_availability_title">Override VoLTE availability</string>
+ <!-- Treble settings screen, securize title -->
+ <string name="securize_title">Securize</string>
+ <!-- Treble settings screen, securize summary -->
+ <string name="securize_summary">Unsupported - please try other methods\n(e.g. PlayIntegrityFix module)</string>
<!-- Treble settings screen, override navbar availability title -->
<string name="override_navbar_availability_title">Override navigation bar availability</string>
diff --git a/res/xml/treble_settings.xml b/res/xml/treble_settings.xml
index 4e3bef9b644..13e74ee4f6c 100644
--- a/res/xml/treble_settings.xml
+++ b/res/xml/treble_settings.xml
@@ -62,6 +62,16 @@
</PreferenceCategory>
+ <PreferenceCategory
+ android:title="@string/treble_settings_category_name_system">
+
+ <Preference
+ android:enabled="false"
+ android:title="@string/securize_title"
+ android:summary="@string/securize_summary" />
+
+ </PreferenceCategory>
+
<PreferenceCategory
android:title="@string/treble_settings_category_name_ui">
--
2.34.1