安卓10.0 设置中新增退出设置选项

发布于:2025-02-10 ⋅ 阅读:(145) ⋅ 点赞:(0)

问题背景

客户有隐藏导航栏状态栏的需求且APK中调用了打开设置界面的操作,因此客户想要在设置中增添退出选项。

最终效果

在这里插入图片描述

问题解决

修改思路:仿照其他选项增加个item并实现item点击事件为退出设置。
具体实现如下:

diff --git a/android/packages/apps/Settings/res/values/strings.xml b/android/packages/apps/Settings/res/values/strings.xml
index ec0a407006..b3b424f7d8 100644
--- a/android/packages/apps/Settings/res/values/strings.xml
+++ b/android/packages/apps/Settings/res/values/strings.xml
@@ -11411,5 +11411,6 @@
     <string name="work_policy_privacy_settings">Your work policy info</string>
     <!-- Summary for Enterprise Privacy settings, explaining what the user can expect to find under it [CHAR LIMIT=NONE]-->
     <string name="work_policy_privacy_settings_summary">Settings managed by your IT admin</string>
-
+    <string name="exit_settings">退出设置</string>
+    <string name="exit_settings_summary">返回主界面或关闭应用</string>
 </resources>
diff --git a/android/packages/apps/Settings/res/xml/top_level_settings.xml b/android/packages/apps/Settings/res/xml/top_level_settings.xml
index 367f426f5f..77e6dc204a 100644
--- a/android/packages/apps/Settings/res/xml/top_level_settings.xml
+++ b/android/packages/apps/Settings/res/xml/top_level_settings.xml
@@ -20,6 +20,15 @@
     xmlns:settings="http://schemas.android.com/apk/res-auto"
     android:key="top_level_settings">
 
+    <!-- 添加个退出设置选项 -->
+    <Preference
+        android:key="top_level_exit_settings"
+        android:title="@string/exit_settings"
+        android:summary="@string/exit_settings_summary"
+        android:order="-130"
+        android:icon="@drawable/ic_homepage_system_dashboard"
+        android:onClick="exitSettings" />
+
     <Preference
         android:key="top_level_network"
         android:title="@string/network_dashboard_title"
diff --git a/android/packages/apps/Settings/src/com/android/settings/homepage/TopLevelSettings.java b/android/packages/apps/Settings/src/com/android/settings/homepage/TopLevelSettings

网站公告

今日签到

点亮在社区的每一天
去签到