▌B860AV1.1-T 优化第四弹:两键切换 IPTV 与当贝桌面、双网
本系列最后一弹,感谢各位坛友捧场。这一弹才是重头戏,也许是当前全网体验最优、兼容最广双桌面、双网切换方案,您试试就知道了。只要盒子有双网卡,理论全部适用。
电信盒子本来只能看 ITV,我们获取 ADB 权限后,就能看第三方软件了。但 ITV 是内网与 Internet 分在不同 Vlan,可以认为分为两个局域网,不可互通。并且电信盒子开启 Wifi 就拿不到内网 IP,尝试了很多方案如设置路由、自动切换 WIFI 与有线等,都不甚满意。
最终,完成方案是通过两个按键,分别设置为 IPTV 桌面、当贝桌面。可以一键触达任一桌面,同时进入 IPTV 桌面,自动将网络切为 IPTV 内网;进入当贝桌面,网络为 Internet 网络。
感谢坛友 NadOo,与 Github 用户 Wyf841015 脚本启发。
自己重新写了一个脚本,本脚本优点:
1、绕过 ITV 广告,清爽启动(快到有时开机连进度条都看不到)
2、可自定义开机进入 ITV 还是当贝桌面(请关闭当贝软件里自启,避免干扰)
3、一键触达 ITV 或当贝桌面,就像添加了桌面 Home 键,再也不用不停按返回键了
4、切换网络完全可控,避免自动脚本不识别某些内置 APP 频繁切换问题
5、迅速,切桌面、切网进程无阻塞
▌一、确定要使用的按键、桌面
1.1 获取按键 ID
用电脑 ADB 连接到机顶盒,并进入 adb shell
1.2 获取桌面名称
把电视遥控到你想开启的 IPTV 桌面界面,然后执行如下命令:
可以参考下图,我当前运行的是电视猫,u0 之后那部分便是我们要用的名称
mCurrentFocus=Window{41b735d8 u0 com.moretv.android/com.moretv.module.lowmm.SingleActivity}
获取当贝桌面同理。
至此,拿到想用的两个桌面名称记下来。比如脚本中默认的,南京电信盒子默认桌面为 ihome,第三方为当贝桌面:
▌二、自定义脚本并上传
脚本我放在 gist 上(欢迎 Star),同时提供目前测试稳定版,供下载:
下载后,用文本编辑器打开,可以看到开头定义变量:
大家一看就明白了,把前文拿到的值填入即可:
boot 值决定开机进入哪个桌面。
code_iptv 值改为遥控器上想用作 iptv 桌面的键位值。
code_dangbei 值改为第三方桌面按键 ID 值
id_iptv 值为希望 code[/cur]iptv 这个按键要启动的界面
id_dangbei 值为第三方桌面程序名。
▌三、上传脚本
一定要把 wifi 与有线开关都勾上。拿不到内网地址没关系。
▌四、添加开机自启、后台白名单
第三部分测试没问题了,就把咱们的 dtchange.sh 加入到开机自启脚本就好了
假设机顶盒开机文件脚本在 /system/bin/init.zte.post_boot.sh 执行以下命令即可
无意间看到 /system/etc/BannedKillBackgroundProcessesWhiteList.ini 文件,看名字推测是系统后台白名单,就删掉没用的程序,把我们的两个桌面名称加进入了。
后台常住才切换快么,省下着内存空间就得用在刀刃上。
至此,一个干净、可控、双桌面系统的机顶盒完成了。来张桌面截图,完结此系列。
End
本系列最后一弹,感谢各位坛友捧场。这一弹才是重头戏,也许是当前全网体验最优、兼容最广双桌面、双网切换方案,您试试就知道了。只要盒子有双网卡,理论全部适用。
电信盒子本来只能看 ITV,我们获取 ADB 权限后,就能看第三方软件了。但 ITV 是内网与 Internet 分在不同 Vlan,可以认为分为两个局域网,不可互通。并且电信盒子开启 Wifi 就拿不到内网 IP,尝试了很多方案如设置路由、自动切换 WIFI 与有线等,都不甚满意。
最终,完成方案是通过两个按键,分别设置为 IPTV 桌面、当贝桌面。可以一键触达任一桌面,同时进入 IPTV 桌面,自动将网络切为 IPTV 内网;进入当贝桌面,网络为 Internet 网络。
感谢坛友 NadOo,与 Github 用户 Wyf841015 脚本启发。
自己重新写了一个脚本,本脚本优点:
1、绕过 ITV 广告,清爽启动(快到有时开机连进度条都看不到)
2、可自定义开机进入 ITV 还是当贝桌面(请关闭当贝软件里自启,避免干扰)
3、一键触达 ITV 或当贝桌面,就像添加了桌面 Home 键,再也不用不停按返回键了
4、切换网络完全可控,避免自动脚本不识别某些内置 APP 频繁切换问题
5、迅速,切桌面、切网进程无阻塞
▌一、确定要使用的按键、桌面
1.1 获取按键 ID
用电脑 ADB 连接到机顶盒,并进入 adb shell
1.2 获取桌面名称
把电视遥控到你想开启的 IPTV 桌面界面,然后执行如下命令:
可以参考下图,我当前运行的是电视猫,u0 之后那部分便是我们要用的名称
mCurrentFocus=Window{41b735d8 u0 com.moretv.android/com.moretv.module.lowmm.SingleActivity}
获取当贝桌面同理。
至此,拿到想用的两个桌面名称记下来。比如脚本中默认的,南京电信盒子默认桌面为 ihome,第三方为当贝桌面:
▌二、自定义脚本并上传
脚本我放在 gist 上(欢迎 Star),同时提供目前测试稳定版,供下载:
下载后,用文本编辑器打开,可以看到开头定义变量:
大家一看就明白了,把前文拿到的值填入即可:
boot 值决定开机进入哪个桌面。
code_iptv 值改为遥控器上想用作 iptv 桌面的键位值。
code_dangbei 值改为第三方桌面按键 ID 值
id_iptv 值为希望 code[/cur]iptv 这个按键要启动的界面
id_dangbei 值为第三方桌面程序名。
▌三、上传脚本
一定要把 wifi 与有线开关都勾上。拿不到内网地址没关系。
▌四、添加开机自启、后台白名单
第三部分测试没问题了,就把咱们的 dtchange.sh 加入到开机自启脚本就好了
假设机顶盒开机文件脚本在 /system/bin/init.zte.post_boot.sh 执行以下命令即可
无意间看到 /system/etc/BannedKillBackgroundProcessesWhiteList.ini 文件,看名字推测是系统后台白名单,就删掉没用的程序,把我们的两个桌面名称加进入了。
后台常住才切换快么,省下着内存空间就得用在刀刃上。
至此,一个干净、可控、双桌面系统的机顶盒完成了。来张桌面截图,完结此系列。
End
评分
上一篇:B860AV1.1-T 优化第三弹:冻结无用软件,控制程序自启
下一篇:山东电信中兴B860AV1.1升级最新系统后狂吃内存如何解决??
我试了一下,界面可以切换,但是网络切换不过来。我的也是南京电信,盒子也一样,但是我的软件版本可能高一点,是2018-1-9的,有线和无线同时打开时,只有有线能连接,无线显示未连接,所以也没办法调试。还有个问题,界面切换时,“信息”键原来的界面会先出来,然后再转到当贝桌面的,应该怎么禁止“信息”键原来的界面出现?
另外,我是纯小白,这句是什么意思?nohup /system/bin/dtchange.sh& > /cache/log/dtchange.log
另外,我是纯小白,这句是什么意思?nohup /system/bin/dtchange.sh& > /cache/log/dtchange.log
脚本是一定可以的,这是通用方案,不过觉得还是永久更改好些。
/system/etc/init.zte.post_boot.sh 脚本写在这个自启文件应该好些。
不写了,哈哈,我也是小白一个。
这都被墙了?
强烈建议各位坛友到:https://gist.github.com/boboidream/5ae1ec328e6623774411f80580fdc134 来下载脚本。
因为使用过程中,会不断的改进,帖子每次修改提交都要审核,比较繁琐,帖子里脚本就不再更新了。
现在 0.0.2 版,直接进入 iptv 可能由于启动太快,有概率导致连开机验证都一起跳过。我在 Gist 做了 Sleep 1s 调整,还在测试,希望能修复这问题。
这个楼主不错
感谢捧场~~~
版主敬业啊,赞赞赞~~~~~~
版主敬业啊,赞赞赞~~~~~~
很详细
看不懂。。
牛X,佩服佩服!!
前排支持,加精!
这是大佬~
打开 解析错误,还得翻墙?
看了楼主一系列的教程,受益匪浅
感谢分享教程,这个双网切换 桌面切换得学习下
学习~
感谢支持。实在抱歉,我对改 MAC 真没经验,我不清楚盒子去哪里读的 stb 配置文件。可以一起探讨下
刚查了下,这些位置有可能:
我猜测/cache/reset/stbconfig_clear.ini 要想生效应该是重置下机顶盒才会生效吧?
是重启还是设置里「系统重置」?
我现在有个临时解决方案。
你再 ifconfig 下,网卡已经变了。你可以把这个脚本加到开机启动里去。