Table of Contents

当天猫盒子应用被删之后

How to install Application via adb to TVBox after auto uninstalled due to the f**k gov. policy

最近, 各种Android电视盒子, 由于某些不可告人(大家都懂得)的原因, 好多应用被强制删除了, 比如沙发管家, VST全聚合.

晚上花了几分钟时间, 把沙发管家又装回来了, 以供参考.

获得同一局网中天猫盒子IP地址

方法有好多种, 最简单的在设置里就可以找到, 当然我不会用这种最傻的办法, 而是用了某些强大的黑科技nmap

简单说nmap是一个可以扫描网络中计算机端口的嗅探器, 甚至连目标主机操作系统也可以侦测到.

How to install nmap

for Mac

brew install nmap

for Linux

sudo apt-get install nmap

扫描局域网

sudo nmap  192.168.199.1/24 -v -sS

...
Nmap scan report for Box-a6076782498681e5.lan (192.168.199.165)
Host is up (0.012s latency).
Not shown: 995 closed ports
PORT     STATE SERVICE
4000/tcp open  remoteanything
5555/tcp open  freeciv
7100/tcp open  font-service
7200/tcp open  fodms
8899/tcp open  ospf-lite
MAC Address: 5C:C6:D0:DB:40:0F (Skyworth Digital technology(shenzhen)co.ltd.)
 
Initiating SYN Stealth Scan at 20:40
Scanning Jianqings-MBP.lan (192.168.199.190) [1000 ports]
Discovered open port 22/tcp on 192.168.199.190
Completed SYN Stealth Scan at 20:40, 5.28s elapsed (1000 total ports)
Nmap scan report for Jianqings-MBP.lan (192.168.199.190)
Host is up (0.000011s latency).
Not shown: 971 closed ports, 28 filtered ports
PORT   STATE SERVICE
22/tcp open  ssh
...

上面就是结果, 想必你已经知道了那个Box-a6076782498681e5.lan就是天猫盒子了

用adb命令连上盒子

adb connect 192.168.199.165

jianqings-mbp:workspace pjq$ adb devices
List of devices attached
192.168.199.165:5555 device

OK一切都进展顺利, 之后就可以像操作一台手机一样, 用adb命令做你想做的任何事情

安装你需要的应用

比如安装沙发管家

adb install -r  ~/Downloads/com.shafa.market_4.4.3_webwww.apk

当然你也可以备份沙发管家APK到盒子SDCARD

adb push  /Users/pjq/Downloads/com.shafa.market_4.4.3_webwww.apk /sdcard/

之后在应用列表里就可以找到沙发管家, 安装你想要的任何应用.

To be continue...

如果这个方法失败了, 那后面就要想其它的方法了.

事实证明, 虽然可以安装成功, 但是过不了多久就又被删除了

后来做了一次RESET, 然后在路由器中禁用了以下域名

域名禁止

tvupgrade.yunos.com
osupdate.aliyun.com 
osfota.cdn.aliyun.com
osupdateservice.yunos.com
yunos.com
aliyun.com

hiwifi hosts:

127.0.0.1    tvupgrade.yunos.com
127.0.0.1    osupdate.aliyun.com
127.0.0.1    osfota.cdn.aliyun.com
127.0.0.1    osupdateservice.yunos.com
127.0.0.1    yunos.com

最不想看到的解决方案:反编译破解修改包名

好吧, 就算我屏蔽了它的相关host, 在重启之后, 它还是把系统更新了, 想必是没有完全屏蔽掉所有的域名或者是服务器IP.

就拿HDP直播为例吧, 发现我每次用沙发管家安装的时候, 貌似安装完之后, 立刻就会被删除, 猜测它维护了一个应用package name列表, 当检测到的这个package name的时候就直接执行了删除程序.

如果真是这样的话, 那我的唯一方法就是把HDP直播package name换掉, 这是我最不想看到的方式了, 因为这意味着我要把HDP直播反编译, 修改里面的包名, 并改掉相关的smali文件.

反编译破解一个APK并没有花掉几分钟

反编译工具

相关反编译工具, 我之前整理过, 直接拿来用就可以

git clone https://github.com/pjq/android_apk_tool
cd android_apk_tool
./apktool D HDP_61.apk 
cd HDP_61
vim AndroidManifest.xml

这里我把它原来的包名从hdpfans.com改为com.aliyun.os, 这个就不要怪我了

查找一下哪些地方有“hdpfans.com”

grep -i -R  "hdpfans.com" *

vim smali/hdp/http/MyApp.smali
vim smali/hdp/player/ft.smali
vim smali/hdp/player/LivePlayerNew.smali

直接使用了vim sed “:1,%s/hdpfans.com/com.aliyun.os/gc”人肉一个一个替换

改为之后, 就是重新打包APK了

cd ..
./apktool B HDP_61

再重新对APK进行签名

cd resign_tool/
./resign_apk.sh ../HDP_61/dist/HDP_61.apk 

得到签名之后的文件

HDP_61_signed.apk 

最后安装

adb install -r HDP_61_signed.apk 

居然正常安装成功, 并且成功启动应用, 找到湖南卫视正常播放, 真的好意外, 居然一次就搞定了

PS.整个过程貌似10分钟就搞定了

com.aliyun.os

最后我得到了一个应用, 包名是 com.aliyun.os 相信阿里会认的吧, 看起来就像是直系亲属^_^