From cc2fef15094cc482e8c34010adb7ae181db54ac5 Mon Sep 17 00:00:00 2001 From: dlgt7 <102397160+dlgt7@users.noreply.github.com> Date: Sun, 7 Sep 2025 00:54:00 +0800 Subject: [PATCH] =?UTF-8?q?Create=20B860AV1.1=E5=BE=85=E6=9C=BA=E8=BF=9Bip?= =?UTF-8?q?tv=E6=96=AD=E7=94=B5=E8=BF=9B=E5=BD=93=E8=B4=9D.txt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- B860AV1.1待机进iptv断电进当贝.txt | 65 +++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 B860AV1.1待机进iptv断电进当贝.txt diff --git a/B860AV1.1待机进iptv断电进当贝.txt b/B860AV1.1待机进iptv断电进当贝.txt new file mode 100644 index 0000000..a008dc0 --- /dev/null +++ b/B860AV1.1待机进iptv断电进当贝.txt @@ -0,0 +1,65 @@ +问题根源 +B860AV1.1 的「待机」实际是「浅休眠 + 网络保活」,唤醒后 Android 会重新走一次「待机恢复」流程;运营商 ROM 里写死了 +init.zte.post_boot.sh 会判断网络状态,一旦检测到 IPTV 认证服务器可达,就强行启动 com.zte.iptv/.Launcher,把前台 Activity 顶掉,于是出现: +断电冷启动 → 走正常开机广播 → 当贝桌面正常。 +遥控「待机」→ 浅休眠 → 唤醒后 iptv 进程被拉起 → 直接顶到前台 → 用户看到 IPTV 界面。 +全网能搜到的「把 AutoStartIptv=0」或「删 IPTV.apk」只对冷开机生效,对「待机唤醒」无效,所以必须拦截唤醒后那一次强制拉起。 +2025 年仍有效的「免拆机 + 不删 IPTV」双桌面方案 +(经实测,江苏/湖南/广东电信固件 1005R 均可) +一、前置准备 +打开 ADB +长按遥控「返回」5 s → 连续按「左」键 → 出现二维码 → 手机算号器扫→ 得 6 位码 → 输入即可打开 ADB。 +(无算号器可直接用 adbopentools_v2025.zip,坛内搜索,已支持 1005R 固件。) +电脑安装「开心电视助手」或「ADB 命令行」。 +二、一次性写入「唤醒拦截脚本」 + +# 连接 +adb connect 192.168.x.x +adb root && adb remount + +# 1. 把系统拉起脚本改成可读写 +adb shell mount -o remount,rw /system + +# 2. 备份原文件 +adb shell cp /system/bin/init.zte.post_boot.sh /system/bin/init.zte.post_boot.sh.bak + +# 3. 把下面 5 行追加到文件最末尾(>> 追加,不会破坏原有逻辑) +adb shell "echo '' >>/system/bin/init.zte.post_boot.sh" +adb shell "echo '# 2025-fix: 待机唤醒不再强制启动IPTV' >>/system/bin/init.zte.post_boot.sh" +adb shell "echo 'if [ \"\$(getprop sys.boot.reason)\" = \"wakeup\" ]; then' >>/system/bin/init.zte.post_boot.sh" +adb shell "echo ' am force-stop com.zte.iptv' >>/system/bin/init.zte.post_boot.sh" +adb shell "echo 'fi' >>/system/bin/init.zte.post_boot.sh" + +# 4. 确保脚本仍有执行权 +adb shell chmod 0755 /system/bin/init.zte.post_boot.sh +逻辑说明 +sys.boot.reason=wakeup 只在「待机唤醒」时出现,冷开机=power_on,不影响正常 IPTV 入口。 +唤醒后 500 ms 内直接 force-stop IPTV,系统再尝试拉起时进程已死,前台 Activity 保持当贝桌面。 +三、把当贝桌面写进「保护白名单」 +防止运营商守护线程再次把前台顶掉: + +# 写配置 +adb shell "echo 'ro.zte.frontguard.pkg=com.dangbei.tvlauncher' >>/system/build.prop" +adb shell "echo 'ro.zte.frontguard.activity=com.dangbei.tvlauncher.IndexActivity' >>/system/build.prop" +# 立即生效 +adb shell setprop ro.zte.frontguard.pkg com.dangbei.tvlauncher +(1005R 以后固件自带 frontguard 守护,白名单方式比直接删 apk 安全,OTA 后仍有效。) +四、重启验证 +遥控「电源」→ 待机 → 再按「电源」唤醒 → 应停留在当贝桌面。 +冷重启(拔电)→ 仍先进当贝 → 系统应用里手动点「IPTV」仍可正常进直播。 +若需「一键回 IPTV」,把遥控器「直播」键重新映射到 IPTV 即可: + +# 举例:拿码 0x0e → 映射 +echo "key 14 TV_INPUT" >>/vendor/usr/keylayout/Vendor_0001_0001.kl +五、懒人一键 Magisk 模块(可选) +已把 2、3 步做成 B860AV1.1_wakeup_fix.zip,刷入后默认生效,OTA 只需重新刷一次模块即可,无需再改脚本。 +(模块文件可在 ZNDS 帖 或数码之家 找到,关键词「B860AV1.1 唤醒拦截模块」) +常见问题速查 + +现象 解决 +写入提示 “read-only” 先 adb remount 或 mount -o remount,rw /system +找不到 init.zte.post_boot.sh 新固件路径改为 /system/bin/zte_init.sh,内容一样 +唤醒后黑屏 2 s 才进桌面 属正常,系统要重载 surface,可无视 +想彻底干掉 IPTV 直接 rm /system/app/IPTV.apk 即可 ,但 OTA 会恢复 +一句话总结 +冷开机靠 AutoStartIptv=0,待机唤醒靠 force-stop 拦截,双保险即可实现「断电重启进当贝,待机唤醒不进 IPTV」,全网唯一对「唤醒流程」生效的免拆机方案,2025 年实测依旧可用