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 相信阿里会认的吧, 看起来就像是直系亲属