👁 2637

小米电视 L50M5-AD(MiTV4-ANSM0,代号 xmen,Android 6.0.1)这种 2018~2020 出厂、芯片 Amlogic、屏幕 960×540 的老机型,开机第二屏就给你怼一个广告——而且 没有 dm-verity 强制校验,所以处理起来比新机型干净得多。下面这套方案在该机型实测可行。

整体思路

┌──────────────────────────────────────────────────────┐
│                    去广告流程                          │
│                                                      │
│  ① 改 hosts(路由器层或镜像级) ─▶ 广告请求拦截到本地  │
│  ② 首次开机不联网               ─▶ 防止广告预加载     │
│  ③ adb 卸载广告组件             ─▶ 彻底移除广告引擎   │
│                                                      │
│  三步组合 = 开机无广告                                 │
└──────────────────────────────────────────────────────┘

方法一:改 hosts(最稳,重启不丢)

有软路由 / OpenWrt 的话最方便,直接在路由器的 DNS / hosts 里加。没软路由就只能拆 eMMC 写镜像。

1.1 路由器或电视 /etc/hosts 加规则

# ===== 小米电视开机广告屏蔽 =====

# 广告核心域名(必须屏蔽)
127.0.0.1 api.ad.xiaomi.com
127.0.0.1 sdkconfig.ad.xiaomi.com
127.0.0.1 test.ad.xiaomi.com
127.0.0.1 staging-adx.tv.mi.com

# 统计 / 追踪(建议屏蔽)
127.0.0.1 data.mistat.xiaomi.com
127.0.0.1 test.data.mistat.xiaomi.srv
127.0.0.1 abtest.mistat.xiaomi.com

# 第三方广告 / 统计(可选屏蔽)
127.0.0.1 scraper.duokanbox.com
127.0.0.1 scraper.pandora.xiaomi.com
127.0.0.1 stat.funshion.net
127.0.0.1 tvrp.kookong.com
127.0.0.1 apptv.tvmao.cn

1.2 拆 eMMC 写镜像(永久生效)

没软路由的话,直接修改 eMMC 镜像里 system 分区的 /etc/hosts 文件,写回 eMMC 后永久生效。OTA 更新不会覆盖——system/etc/hosts 不在 OTA 范围内。需要编程器(如 Xgpro T76)。

方法二:首次开机不联网 + adb 卸载

2.1 第一次开机断开 WiFi / 网线

刷完镜像后第一次开机不要连网络:

  • AdServer 启动 → 请求 api.ad.xiaomi.com → 失败
  • cacheAds is empty → 跳过广告 → 直接进桌面
  • 不联网确保没有广告素材被缓存到 data 分区

2.2 启用电视 ADB(关键前置)

小米电视出厂 ADB 默认是关的,必须自己手动开。而且每次重启后 ADB 开关会自动关闭——所以这步要么每次开机重开一次,要么直接用方法一改 hosts + 一次性卸载完就不用再连。

启用流程(5 步)

关于-产品型号-狂按几次确认键会看到提示 -然后去 安全选项- adb就出来了 把拒绝改成允许, 电脑或手机第一次连接过去会提示 接受 这样就可以操作了, 由于6.0系统的 官方并未做过多限制可以直接卸载不要的软件或冻结它

小米电视 ADB 启用流程图

  1. 进设置 → 关于本机:遥控器按菜单键,进入「设置 → 关于」
  2. 狂点版本号 7~10 次:连续点击「版本号」那一行,直到屏幕提示 「已进入开发者模式」
  3. 打开 ADB 调试开关:返回设置,找到「调试模式 / ADB 调试」,把开关打开
  4. 电脑端连接:adb connect <电视IP>:5555
  5. 电视端授权:电视屏幕会弹出 USB 调试授权对话框,用遥控器选「允许」,建议同时勾选「始终允许此电脑」,下次免授权

⚠ 重启失效提示

电视每次重启后,第 ③ 步的 ADB 开关会被系统重置为关闭状态(开发者模式本身不会丢,只是 ADB 开关回到 off)。下次想用 adb 还得重新进设置打开。所以建议:

  • 一次性把 adb 卸载操作做完(卸载 AdServer / preload)
  • 长期屏蔽广告靠方法一(hosts),hosts 写在路由器或 eMMC 镜像里,重启不丢

2.3 进桌面后 adb 卸载广告组件

# 连接电视
adb connect <电视IP>

# 卸载广告引擎(核心)
adb shell pm uninstall --user 0 com.xiaomi.mitv.adserver

# 卸载预装管理器(防止后台重装广告组件)
adb shell pm uninstall --user 0 com.xiaomi.mitv.preload

# 确认卸载
adb shell pm list packages | grep -i ad
adb shell pm list packages | grep -i preload

--user 0 只对当前用户卸载,不修改 system 分区,不触发校验失败。恢复出厂设置会还原,但 hosts 屏蔽仍然有效——所以方法一 + 方法二组合起来最稳。

方法三(高级,可选):反编译 TvHome 改默认值

TvHome.apk 中包含以下广告相关配置(反编译后可改默认值):

配置项 默认值 作用
boot_ad_sound — 开机广告声音
boot_ad_sound_enable true 开机广告声音开关
app_boot_advert_time >0 开机广告倒计时秒数
boot_auto_play true 开机自动播放广告
OTT_POWER_SERVICE — 开机广告触发关键字

风险较高:TvHome 是桌面程序,改坏了直接黑屏。优先用方法一 + 方法二,本方法仅在前两种都没起作用时再考虑。

验证

# 1. 确认 hosts 生效
adb shell cat /etc/hosts
adb shell ping -c 1 api.ad.xiaomi.com    # 应返回 127.0.0.1

# 2. 确认 AdServer 已卸载
adb shell pm path com.xiaomi.mitv.adserver   # 应返回空

# 3. 抓包确认无广告请求
adb shell logcat | grep -i "AD-PLUGIN"        # 应无输出
adb shell logcat | grep -i "fetchAds"         # 应无输出

风险一览

操作 风险 可逆性
改 hosts 无风险 删掉新增行即恢复
首次不联网 无风险 —
adb uninstall(–user 0) 低风险 恢复出厂设置可还原
删 /system/vendor/app 下的 AdServer.apk 中风险(可能触发系统校验) 需重刷镜像
反编译 TvHome 高风险(桌面崩溃) 需重刷镜像

适用机型 · 同系列文章

本方法适用于 小米电视 MiTV4 系列 / Android 6.0.1 老机型。同代或同主控的机器思路一致——hosts 屏蔽地址通用,adb 命令一致。本站已发的相关机型文章:

另外想看 L50M5-AD 完整 eMMC 分区结构、广告组件路径、广告 API 端点列表,请看 小米电视 L50M5-AD eMMC 分区分析(含 ROM 下载)。

实测日期:2026-06-22 · 设备:MiTV4-ANSM0 (xmen)