☰
中兴机顶盒 B860AV2.1-T 开启ADB + 去广告精简(电信IPTV,STB协议10042)
2026/10/22 4:23:54 网站建设 项目流程

中兴机顶盒 B860AV2.1-T 开启ADB + 去广告精简(电信IPTV,STB协议10042)

原创 · 2026-10-21
适用:中兴 ZXV10 B860 系列电信定制 IPTV 盒(本文实例 B860AV2.1-T,Android 4.4.2 / API 19)

摘要

电信 IPTV 盒子广告多、预装杂。网上热门的 tv-vibehack(Cleanyourtv)基于 ADB,三星/LG 系统不支持,但电信的安卓盒子可以。本文给出两条开启 ADB 的思路(常规运维调试、STB 协议直开),以及"保守精简、逐个验证"的去广告思路。全程用pm disable(停用不卸载),可逆。

[TOC]

一、思路框架

  1. 确认设备是安卓系统(电信中兴/华为盒子基本都是),三星 Tizen 没有 ADB,直接排除。
  2. 想办法开 ADB:常规设置入口 → 不行就用 STB 协议(10042)直开,或用 MAC+随机码算密码。
  3. 精简原则:停用(disable)不卸载(uninstall),一次只停一个,停完马上验证直播,出问题立即pm enable恢复。
  4. 分清"绝对不能动"和"可停用"两类包(见第四节),尤其小心运营商内容/平台类应用。

二、开启 ADB(两条路)

2.1 常规:设置 → 运维调试 → 打开ADB

设置(密码 6321 / 10086 / 10000,各省不同) → 运维调试 → 打开ADB

有的省份弹"MAC + 随机码"输入框(用 2.3 的算法算密码);弹二维码的基本无解(内容是加密数据,密码预置在系统 APK 里),走 2.2。

2.2 STB 协议直开(推荐,绕开一切密码)

中兴盒子 10042 端口有 STB 调试协议,AES-128-ECB 出厂密钥,4 段报文可完全构造,发完网络 ADB(5555)直接开启。协议细节来自社区逆向(zhangshuqiao.org)。

核心代码(zte_stb_adb.py,依赖pip install pycryptodome):

importsocket,struct,timefromCrypto.CipherimportAES KEY=b"|!jFa8o4"+b"\x00"*8# 出厂默认密钥AFFIRM="16_AeKg_2t7z_@01_17_@A_$oMjO6fg.P_18_GdpR8jO30!d-rR_20_jD9!2y-dW8"TOOLTYPE="ToolType:16,licindex:yuduanhun"defenc_frame(ftype,payload):# 加密帧构造ct=AES.new(KEY,AES.MODE_ECB).encrypt(payload+b"\x00"*(-len(payload)%16))returnbytes((0x10,ftype,len(ct)>>8,len(ct)&0xFF,0,2))+b"\x00"*18+ctdefcmd_msg(cmd,payload=b""):# 命令头 + 数据returnenc_frame(1,struct.pack(">HHI",cmd,0,len(payload)))+(enc_frame(0x10,payload)ifpayloadelseb"")defmain(host):msgs=[bytes((0x10,0x20,0,0))+struct.pack(">I",4)+b"V6.0",# 1 版本协商(明文)cmd_msg(5,AFFIRM.encode()),# 2 affirm 鉴权cmd_msg(0x15,TOOLTYPE.encode())+cmd_msg(0x11),# 3 工具类型声明cmd_msg(0x2036,b"cmdtype=ADB_ZTE,cmdparams=Open"),# 4 开启网络ADB]withsocket.create_connection((host,10042),timeout=6)ass:forminmsgs:s.sendall(m);time.sleep(1)main("10.194.167.46")# 换成盒子IP

跑完即可 ADB 连接:

# Windows$env:TV_HOST ="10.194.167.46"python tools/tv.py"getprop ro.product.model"# 或任意 adb 工具

注意:盒子重启/恢复出厂后 ADB 会关、IP 会变,重跑一次即可;IP 在盒子"设置 → 网络信息"里看。

2.3 备用:MAC + 随机码算 ADB 密码

社区逆向算法(MD5 + 溢出取绝对值),可用:

importhashlibdefget_code(mac,rand):# mac 如 04:95:73:BE:48:5A, rand 如 C59396ifrand.startswith("C")andlen(rand)==6:# C开头6位时先变换MACmb=list(mac);mb[-1]=rand[-1]i=0forj,cinenumerate(mb):ifc==":":mb[j]=rand[i];i+=1mac="".join(mb)md5=hashlib.md5(f"open_ADB{rand}@{mac}ZTE_ENCRYPT".encode()).hexdigest().upper()r=0forcinmd5:r=(r*31+ord(c))&0xFFFFFFFFifr>=0x80000000:r-=0x100000000returnabs(r)

三、去广告精简(保守方案)

原则:pm disable停用不卸载;一次只停一个,停完马上看电视直播是否正常,全通过再停下一个。

本机验证过的可停清单(7 个,广告/推送/无用,与 IPTV 无关):

包名说明
com.amt.appstore.tianyi天翼应用商店(广告源)
com.android.silenceinstaller静默安装器(远程推送安装通道)
com.dekscom.qosaEVQA 质量监测(遥测)
ctc.android.smart.terminal.voicectrl语音遥控
com.huawei.iptv.stb.videotalk.activity华为视频通话
com.healthcloud.yueme.xinjang健康云
com.android.smart.tv.cloud189天翼云盘

命令(本固件pm disable无回显但生效,用-d核对):

pm disable com.amt.appstore.tianyi pm list packages-d# 核对是否真的停用

四、绝对不能动(血泪经验)

类别包名
IPTV 客户端 / EPGcom.itv.android.iptv、com.itv.android.iptv.tvclient、com.bestv.epg.tv
认证组件zte.zerocfgui、com.ztestb.authconfig、com.ztestb.basecomp
遥控/输入法/ADBcom.amlogic.inputmethod.remote、com.zte.adb
事故嫌疑(勿碰)com.cibn.tv(定制内容)、com.android.smart.terminal.dplatform(QM平台)、com.ztestb.upgrade、com.iflytek.xiri*

经验:运营商内容平台类应用(com.cibn.tv、QM 平台)看着无关,一停 IPTV 就废;讯飞语音别碰(EPG 搜索可能依赖)。

五、恢复方法

pmenable<包名># 对清单里每个包执行pm list packages-d# 应为空

或直接在盒子上"恢复出厂设置"一键还原(ADB、IP 都会重置)。

六、FAQ

  • 盒子重启后 ADB 连不上?重跑 2.2 的脚本,IP 可能变了,先在盒子网络信息里看新 IP。
  • pm disable 没输出?正常,本固件不回显,用pm list packages -d核对。
  • 能装仿 Apple TV 桌面吗?不能,它要求 Android 8.0+,老盒子是 4.4,只做去广告精简即可。
  • 能免费看付费频道吗?不能,那是运营商的收费业务,涉及绕过支付/版权,违规且不安全。

七、免责声明

仅用于个人设备的合法管理;运营商租用设备退还前请恢复出厂。文中协议细节来自社区公开逆向,仅作学习记录。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询