V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Mateverse
V2EX  ›  Android

分享一下如何免 ROOT 隐藏状态栏 NFC/闹钟等图标

  •  1
     
  •   Mateverse · 2022-06-12 13:42:08 +08:00 · 14309 次点击
    这是一个创建于 888 天前的主题,其中的信息可能已经有所发展或是发生改变。

    因为最新的 MIUI 测试版 /其它部分 UI 会始终显示 NFC 图标,所以写一下这个图标如何隐藏。

    准备工作:

    1. USB 数据线
    2. 电脑端 adb
    3. 手机打开 USB 调试,部分设备需要打开USB 调试(安全模式) 一般会在 USB 调试开关的下方

    操作步骤:

    adb shell settings put secure icon_blacklist nfc
    

    nfc 可以替换成下面的内容,多个的话可以用,分割。

    图标 图标描述
    volume 静音 /震动图标
    location 定位图标
    speakerphone 麦克风使用中图标
    wifi wifi
    hotspot 热点
    alarm_clock 闹钟
    bluetooth 蓝牙
    airplane 飞行模式
    headphone 耳机
    cast 录屏状态
    nfc nfc

    如果需要恢复,需要使用:

    adb shell settings put secure icon_blacklist null
    会一次性恢复所有图标
    
    第 1 条附言  ·  2022-06-12 15:42:30 +08:00
    注意:如果你需要隐藏多个图标,需要使用 xxx,xxx,xxx 把你要隐藏的图标一次性写进去。因为这个命令是写入,不是添加。
    34 条回复    2024-06-22 12:07:30 +08:00
    estk
        1
    estk  
       2022-06-12 13:49:17 +08:00
    MIUI 如何免 Root 隐藏 VPN 图标?
    estk
        2
    estk  
       2022-06-12 13:54:13 +08:00
    试了 vpn 貌似不行

    > adb shell settings put secure icon_blacklist vpn

    Exception occurred while executing 'put':
    java.lang.SecurityException: Permission denial: writing to settings requires:android.permission.WRITE_SECURE_SETTINGS
    at com.android.providers.settings.SettingsProvider.enforceWritePermission(SettingsProvider.java:2266)
    at com.android.providers.settings.SettingsProvider.mutateSecureSetting(SettingsProvider.java:1719)
    at com.android.providers.settings.SettingsProvider.insertSecureSetting(SettingsProvider.java:1670)
    at com.android.providers.settings.SettingsProvider.call(SettingsProvider.java:458)
    at android.content.ContentProvider.call(ContentProvider.java:2486)
    at android.content.ContentProvider$Transport.call(ContentProvider.java:517)
    at com.android.providers.settings.SettingsService$MyShellCommand.putForUser(SettingsService.java:382)
    at com.android.providers.settings.SettingsService$MyShellCommand.onCommand(SettingsService.java:278)
    at com.android.modules.utils.BasicShellCommandHandler.exec(BasicShellCommandHandler.java:97)
    at android.os.ShellCommand.exec(ShellCommand.java:38)
    at com.android.providers.settings.SettingsService.onShellCommand(SettingsService.java:50)
    at android.os.Binder.shellCommand(Binder.java:953)
    at android.os.Binder.onTransact(Binder.java:837)
    at android.os.Binder.execTransactInternal(Binder.java:1187)
    at android.os.Binder.execTransact(Binder.java:1146)
    Cheons
        3
    Cheons  
       2022-06-12 13:55:20 +08:00 via Android
    应该是安卓通用 adb
    hd 高清通话的呢? volte ?
    estk
        4
    estk  
       2022-06-12 13:57:35 +08:00
    试了闹钟也是:java.lang.SecurityException: Permission denial: writing to settings
    Cusmate
        5
    Cusmate  
       2022-06-12 14:27:03 +08:00
    原厂 ROM 里厂商自定义的图标怎么知道图标名称呢,我的手机连接 VPN 后多了一把锁,不知道怎么禁用
    ltkun
        6
    ltkun  
       2022-06-12 14:40:25 +08:00 via Android
    root 了以后怎么隐藏呢
    yuu95
        7
    yuu95  
       2022-06-12 14:45:15 +08:00 via Android
    @estk 同求隐藏 VPN
    WOLFRAZOR
        8
    WOLFRAZOR  
       2022-06-12 14:50:30 +08:00 via iPhone
    刷个类原生,想隐藏啥就隐藏啥(有现成的开关,免 root ),可比国内 UI 省事多了……
    estk
        9
    estk  
       2022-06-12 15:00:38 +08:00
    @yuu95
    我运行成功,但是 VPN 依然显示
    查看是否隐藏命令:adb shell settings get secure icon_blacklist
    运行命令显示 vpn 已经添加 blacklist ,但是依然显示 VPN 图标,重启手机也是
    ltkun
        10
    ltkun  
       2022-06-12 15:04:36 +08:00
    play 市场有个 SystemUI tuner 可以更简单点
    estk
        11
    estk  
       2022-06-12 15:11:41 +08:00
    所以说 VPN 的图标名应该不是 vpn
    但是网上查了也没有提供所有图标名
    laoyur
        12
    laoyur  
       2022-06-12 15:19:52 +08:00
    SystemUI Tuner +1
    亲测把猥皮摁图标搞死了,不过不是 miui
    Mateverse
        13
    Mateverse  
    OP
       2022-06-12 15:38:40 +08:00
    @estk 第三步自己看哦,需要打开下面一个安全设置。
    estk
        14
    estk  
       2022-06-12 15:38:44 +08:00
    @laoyur
    我估计 miui 是换了个名字
    Mateverse
        15
    Mateverse  
    OP
       2022-06-12 15:57:51 +08:00
    @estk 我也是 miui ![微信截图_20220612155734.png]( https://s2.loli.net/2022/06/12/zIkKTe8F9L5Q3A2.png)
    laoyur
        16
    laoyur  
       2022-06-12 16:07:00 +08:00
    @estk 你试过 SystemUI Tuner 吗?我以前 miui 时也是四处寻找隐藏猥皮摁的方法,未果,但我忘记有没有用过 SystemUI Tuner 了

    现在用 vivo 系的,SystemUI Tuner 秒生效
    mgrddsj
        17
    mgrddsj  
       2022-06-12 16:48:44 +08:00
    看你的 shell 命令,应该用 SetEdit 或者 SystemUI Tuner (紫色图标那个)也能达到相同的效果。SystemUI Tuner 还有挺多其它好用的功能,可以试试。
    estk
        18
    estk  
       2022-06-12 18:34:37 +08:00 via Android
    @laoyur
    我刚刚用了这个,VPN 选项可以勾掉,但是依然显示在顶部,即使手机重启。
    我打算换个品牌试试看是不是小米自身的问题
    Williams2008
        19
    Williams2008  
       2022-06-12 18:41:38 +08:00 via iPhone
    @ltkun system ui turner 作者已经明确表示 App 对 emui 和 miui 无效,我自己用的原生安卓和 one ui 就很好使,最近还加了汉化,在辣鸡咕鸽还没禁礼品卡的时候还请过他喝咖啡😏
    HankAviator
        20
    HankAviator  
       2022-06-12 18:44:50 +08:00 via Android
    miui12 没问题,los 也很兼容 SystemUI Tuner 。miui13 (基于安卓 12 )对这些兼容性都很差,只能 woobox
    @estk
    estk
        21
    estk  
       2022-06-12 19:21:40 +08:00 via Android
    @HankAviator
    碰巧是 miui13
    不知道是不是它改了名称还是直接禁用该功能
    bruce0
        22
    bruce0  
       2022-06-12 19:33:22 +08:00
    coloros 可以直接设置显示那些
    Mateverse
        23
    Mateverse  
    OP
       2022-06-12 19:47:12 +08:00
    @Cheons volte_call,ims_volte,ims_volte2,volte,ims_indicator 你试试这几个
    ysc3839
        24
    ysc3839  
       2022-06-12 21:05:41 +08:00 via Android
    恢复的话应该是用 settings delete secure icon_blacklist

    @estk 大概不可行,因为去掉了这部分代码。我的方法是用 Runtime Resource Overlay 替换掉对应图标。
    estk
        25
    estk  
       2022-06-12 21:21:57 +08:00 via Android
    @ysc3839
    Runtime Resource Overlay 是 App 名字吗?
    ysc3839
        26
    ysc3839  
       2022-06-12 21:30:17 +08:00 via Android
    @estk 不是,是 Android 的一个功能 https://source.android.com/devices/architecture/rros
    需要 root 才能使用
    sungnix
        27
    sungnix  
       2022-06-13 10:54:48 +08:00
    感谢分享,终于能把状态栏的闹钟和蓝牙图标隐藏了。
    HankAviator
        28
    HankAviator  
       2022-06-13 11:08:11 +08:00
    los 有一点好是蓝牙未连接就不显示,连接才显示蓝牙和电量。可惜这个办法好像实现不了这个…配合 tasker 倒是可以…
    HankAviator
        29
    HankAviator  
       2022-06-13 11:16:07 +08:00
    @estk woobox 是直接 hook 到状态栏 view 上,估计 adb 的方法不行,不知道只是 miui 还是安卓 12 都这样。miui12 用这个办法好像都可以
    Zeonjl
        30
    Zeonjl  
       2022-06-13 15:20:12 +08:00 via iPhone
    学习了
    sungnix
        31
    sungnix  
       2022-09-25 11:06:35 +08:00
    MIUI 12 ( Android 11 )有效,
    升级到 MIUI 13 ( Android 12 )不起作用了。
    dyzzc
        32
    dyzzc  
       2022-11-26 19:32:32 +08:00 via Android
    @laoyur 坚果 R2 无效
    waykom
        33
    waykom  
       2023-01-18 12:04:11 +08:00
    MIUI 13 如何隐藏?
    z836454898
        34
    z836454898  
       147 天前
    @estk 试了 vivo 可以隐藏
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2928 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 14:30 · PVG 22:30 · LAX 06:30 · JFK 09:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.