Android 13 SystemUI 屏蔽导航栏;屏蔽锁屏;隐藏状态栏;禁止状态栏下拉;屏蔽Camera绿色图标;屏蔽原生音量条;屏蔽原生亮度条。

本文详细介绍了如何在Android13手机和平板上通过修改系统源码实现导航栏、锁屏功能的屏蔽,以及隐藏状态栏、禁止状态栏下拉、屏蔽相机绿色图标和原生音量/亮度条的方法。
摘要由CSDN通过智能技术生成

写在前面:本文给出Android 13 手机/平板原生SystemUI 一些实用的屏蔽补丁。

1、屏蔽导航栏

  导航栏屏蔽很简单,直接把创建导航栏的代码屏蔽即可。

代码路径:frameworks\base\packages\SystemUI\src\com\android\systemui\statusbar\phone\CentralSurfacesImpl.java
    // ================================================================================
    // Constructing the view
    // ================================================================================
    protected void makeStatusBarView(@Nullable RegisterStatusBarResult result) {
    	. . . . . .
    	. . . . . .
    	. . . . . .
    	//createNavigationBar(result);//注释这行代码即可
    	. . . . . .
    	. . . . . .
    	. . . . . .

	}

2、屏蔽锁屏

diff --git a/frameworks/base/packages/SettingsProvider/res/values/defaults.xml b/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
index 99b15db780..e68bc2f410 100644
--- a/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
+++ b/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
@@ -82,7 +82,7 @@
     <integer name="def_max_sound_trigger_detection_service_ops_per_day" translatable="false">1000</integer>
     <integer name="def_sound_trigger_detection_service_op_timeout" translatable="false">15000</integer>
 
-    <bool name="def_lockscreen_disabled">false</bool>
+    <bool name="def_lockscreen_disabled">true</bool>
     <bool name="def_device_provisioned">false</bool>
     <integer name="def_dock_audio_media_enabled">1</integer>
 
diff --git a/packages/apps/Settings/res/xml/security_settings_picker.xml b/packages/apps/Settings/res/xml/security_settings_picker.xml
index aed702983c..1c4ee9854e 100644
--- a/packages/apps/Settings/res/xml/security_settings_picker.xml
+++ b/packages/apps/Settings/res/xml/security_settings_picker.xml
@@ -24,7 +24,7 @@
             android:icon="@drawable/ic_lock_none"
             android:persistent="false"/>
 
-    <com.android.settingslib.RestrictedPreference
+    <!-- <com.android.settingslib.RestrictedPreference
             android:key="unlock_set_none"
             android:title="@string/unlock_set_unlock_none_title"
             android:icon="@drawable/ic_lock_swipe"
@@ -70,6 +70,6 @@
     <com.android.settingslib.widget.FooterPreference
             android:key="lock_settings_footer"
             android:selectable="false"
-            settings:searchable="false"/>
+            settings:searchable="false"/> -->
 
 </PreferenceScreen>
diff --git a/packages/apps/Settings/src/com/android/settings/password/ChooseLockGeneric.java b/packages/apps/Settings/src/com/android/settings/password/ChooseLockGeneric.java
index 8a4e9bb6c1..a1ca5340e3 100644
--- a/packages/apps/Settings/src/com/android/settings/password/ChooseLockGeneric.java
+++ b/packages/apps/Settings/src/com/android/settings/password/ChooseLockGeneric.java
@@ -656,11 +656,11 @@ public class ChooseLockGeneric extends SettingsActivity {
 
             // Used for testing purposes
             findPreference(ScreenLockType.NONE.preferenceKey).setViewId(R.id.lock_none);
-            findPreference(KEY_SKIP_FINGERPRINT).setViewId(R.id.lock_none);
-            findPreference(KEY_SKIP_FACE).setViewId(R.id.lock_none);
-            findPreference(KEY_SKIP_BIOMETRICS).setViewId(R.id.lock_none);
-            findPreference(ScreenLockType.PIN.preferenceKey).setViewId(R.id.lock_pin);
-            findPreference(ScreenLockType.PASSWORD.preferenceKey).setViewId(R.id.lock_password);
+            // findPreference(KEY_SKIP_FINGERPRINT).setViewId(R.id.lock_none); //xuhao add 
+            // findPreference(KEY_SKIP_FACE).setViewId(R.id.lock_none);
+            // findPreference(KEY_SKIP_BIOMETRICS).setViewId(R.id.lock_none);
+            // findPreference(ScreenLockType.PIN.preferenceKey).setViewId(R.id.lock_pin);
+            // findPreference(ScreenLockType.PASSWORD.preferenceKey).setViewId(R.id.lock_password);
         }
 
         private String getFooterString() {
@@ -686,30 +686,30 @@ public class ChooseLockGeneric extends SettingsActivity {
 
         private void updatePreferenceText() {
             if (mForFingerprint) {
-                setPreferenceTitle(ScreenLockType.PATTERN,
-                        R.string.fingerprint_unlock_set_unlock_pattern);
-                setPreferenceTitle(ScreenLockType.PIN, R.string.fingerprint_unlock_set_unlock_pin);
-                setPreferenceTitle(ScreenLockType.PASSWORD,
-                        R.string.fingerprint_unlock_set_unlock_password);
+                // setPreferenceTitle(ScreenLockType.PATTERN,
+                //         R.string.fingerprint_unlock_set_unlock_pattern);
+                // setPreferenceTitle(ScreenLockType.PIN, R.string.fingerprint_unlock_set_unlock_pin);
+                // setPreferenceTitle(ScreenLockType.PASSWORD,
+                //         R.string.fingerprint_unlock_set_unlock_password);
             } else if (mForFace) {
-                setPreferenceTitle(ScreenLockType.PATTERN,
-                        R.string.face_unlock_set_unlock_pattern);
-                setPreferenceTitle(ScreenLockType.PIN, R.string.face_unlock_set_unlock_pin);
-                setPreferenceTitle(ScreenLockType.PASSWORD,
-                        R.string.face_unlock_set_unlock_password);
+                // setPreferenceTitle(ScreenLockType.PATTERN,
+                //         R.string.face_unlock_set_unlock_pattern);
+                // setPreferenceTitle(ScreenLockType.PIN, R.string.face_unlock_set_unlock_pin);
+                // setPreferenceTitle(ScreenLockType.PASSWORD,
+                //         R.string.face_unlock_set_unlock_password);
             } else if (mForBiometrics) {
-                setPreferenceTitle(ScreenLockType.PATTERN,
-                        R.string.biometrics_unlock_set_unlock_pattern);
-                setPreferenceTitle(ScreenLockType.PIN, R.string.biometrics_unlock_set_unlock_pin);
-                setPreferenceTitle(ScreenLockType.PASSWORD,
-                        R.string.biometrics_unlock_set_unlock_password);
+                // setPreferenceTitle(ScreenLockType.PATTERN,
+                //         R.string.biometrics_unlock_set_unlock_pattern);
+                // setPreferenceTitle(ScreenLockType.PIN, R.string.biometrics_unlock_set_unlock_pin);
+                // setPreferenceTitle(ScreenLockType.PASSWORD,
+                //         R.string.biometrics_unlock_set_unlock_password);
             }
 
             if (mManagedPasswordProvider.isSettingManagedPasswordSupported()) {
-                setPreferenceTitle(ScreenLockType.MANAGED,
-                        mManagedPasswordProvider.getPickerOptionTitle(mForFingerprint));
+                // setPreferenceTitle(ScreenLockType.MANAGED,
+                //         mManagedPasswordProvider.getPickerOptionTitle(mForFingerprint));
             } else {
-                removePreference(ScreenLockType.MANAGED.preferenceKey);
+                //removePreference(ScreenLockType.MANAGED.preferenceKey);
             }
 
             if (!(mForFingerprint && mIsSetNewPassword)) {

3、隐藏状态栏

在这里插入图片描述

4、禁止状态栏下拉

  解锁之后禁止状态栏下拉显示快捷通知、快捷设置。
在这里插入图片描述

5、屏蔽Camera绿色图标

  Android 13 使用摄像头时右上角会有绿色图标,屏蔽方法如下:
在这里插入图片描述
在这里插入图片描述

6、屏蔽原生音量条

frameworks\base\packages\SystemUI\src\com\android\systemui\volume\VolumeDialogImpl.java
在这里插入图片描述

在这里插入图片描述

7、屏蔽原生亮度条

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 10
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Android 11 中,状态栏和通知栏的设计有所改变,可能会影响到一些应用程序的通知显示。 如果你想要屏蔽状态栏中的通知,但仍然希望能够收到通知,请尝试以下方法: 1. 检查应用程序通知设置:首先,确保你的应用程序已经开启了通知权限,并且设置了正确的通知渠道。如果应用程序的通知权限被关闭,或者通知渠道被设置为“无声”,那么即使收到了通知,也不会在状态栏中显示。 2. 检查系统设置:在 Android 11 中,系统设置中新增了一个“通知历史记录”选项,用于控制是否在状态栏中显示通知。如果你在系统设置中关闭了“通知历史记录”,那么即使收到了通知,也不会在状态栏中显示。你可以打开系统设置,找到“应用和通知” > “通知历史记录”,然后将其打开即可。 3. 检查第三方应用程序:如果你使用了一些第三方应用程序来管理通知,例如“通知助手”或“通知管理器”,那么可能会导致状态栏中的通知被屏蔽。你可以尝试卸载这些应用程序,或者在应用程序设置中将其权限关闭,然后重新启动手机。 4. 检查系统版本:最后,如果你的手机使用的是 Android 11 的早期版本,可能会存在一些系统缺陷导致通知无法在状态栏中显示。你可以尝试升级到最新的系统版本,或者联系手机制造商寻求技术支持。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

苏苏码不动了

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值