禁止乐播投屏PC2.1版升级

 阻挡乐播投屏PC版的最后一个免费版V2.1.0.0的强制更新弹窗。

一直在用这个低版本的乐播投屏,很好用。其实要阻止更新,写个bat文件改下hosts就可以了。(下面这段bat文件代码是论坛某位朋友写的)
@echo off
@echo     请注意你的杀毒软件提示,一定要允许
@echo    ########################################
@copy %windir%\system32\drivers\etc\hosts %windir%\system32\drivers\etc\hosts.bak /y
@echo    ########################################
@echo    hosts文件备份完毕,开始修改hosts文件
@echo 127.0.0.1 cdn.hpplay.com.cn>>%windir%\System32\drivers\etc\hosts
@ipconfig /flushdns
@echo    ########################################
@echo    hosts文件修改完成,按任意键自动关闭此窗口
@echo    ########################################
@echo on
@pause

安卓TV的版本,在网上找了N多个来试都解决不了广告问题。神马“夏普电视自带提取版”、“吾爱破解版v5.6.10”等都没有能的。只能自己改,或者通过hosts过滤广告

https://www.52pojie.cn/thread-1733587-1-1.html

方案一: 

去广告

电视上的apk跟手机上的一样,可以先安装到手机上测试。观察广告里有"开通会员按>键关闭广告",于是搜索字符串"关闭广告",定位到a("pause_ad_tip_2", "Disable Ad", "关闭广告", "關閉廣告", "広告を消す");
继续搜索"pause_ad_tip_2",找到类com.hpplay.sdk.sink.business.ads.view.PauseADView,猜测这个就是显示广告的控件。

继续搜索"new PauseADView" 定位到com.hpplay.sdk.sink.business.ads.bridge.f#f(Context context, RelativeLayout relativeLayout)方法。分析发现这个类实现了com.hpplay.sdk.sink.business.ads.h接口,如下是它实现的接口方法

    home.php?mod=space&uid=1892347 // com.hpplay.sdk.sink.business.ads.h
    public void a(String str, String str2, ADBean aDBean) {
        SinkLog.i("AD_ProcessPauseAD", "onRequestAD");
        List<ADBean.DataBean> a = this.h.a(aDBean, this.n); // 请求广告代码
        boolean z = false;
        if (a != null && a.size() > 0) {
            this.k = a.get(0);
            ADBean.DataBean dataBean = this.k;
            if (dataBean != null && !TextUtils.isEmpty(dataBean.brgb)) {
                SinkLog.i("AD_ProcessPauseAD", "onRequestAD mADBean.brgb=" + this.k.brgb);
                this.m = this.k.brgb;
            }
            z = true;
        }
        SinkLog.i("AD_ProcessPauseAD", "onRequestAD hasValidAD: " + z);
        if (!z) {
            r.a().a(this.g, "", "2", 0, 0, false);
            if (this.b == null) {
                return;
            }
            this.b.c(this, -1);
        }
    }

 分析发现这个方法作用是请求加载广告参数。到这里就很简单了,把请求广告的代码删了就行了。反编译后修改smali代码,将原始代码

    #iget-object p2, p0, Lcom/hpplay/sdk/sink/business/ads/bridge/f;->h:Lcom/hpplay/sdk/sink/business/ads/cloud/ADRequest;

    #iget-object v0, p0, Lcom/hpplay/sdk/sink/business/ads/bridge/f;->n:Ljava/util/List;

    #invoke-virtual {p2, p3, v0}, Lcom/hpplay/sdk/sink/business/ads/cloud/ADRequest;->a(Lcom/hpplay/sdk/sink/bean/#ADBean;Ljava/util/List;)Ljava/util/List;

   #move-result-object p2

 改为

const/4 p2, 0x0

回编译签名后安装,发现竟然还有证书验证。 

 去除证书验证

 一般有签名校验的都会直接闪退,没想到这个软件直接在界面上提示”xx投屏不支持私自修改签名,\n请联系商务同学解决:xxxxxxx“。这就好像在说"I'm here, crack me!!!",太小儿科了。
停留在这个界面,adb shell dumpsys activity activities查看最上层activity,定位到com.hpplay.happyplay.aw/.WelcomeActivity,在onCreate方法里找到检测证书的方法SignCheckHelper#check。让这个函数返回true就行了。

# virtual methods
.method public check()Z
    .locals 1

    const/4 v1, 0x1

    return v1
.end method

安装到电视

U盘找不到了,所以打算通过adb安装,首先要打开电视的开发者模式

  1. 电视里打开设置,关于,找到内部版本号,连续点击直到提示开启开发者模式
  2. 在开发者模式中打开adb调试
  3. 找到电视的ip地址,adb connect 192.168.50.68:5555连接到电视
  4. adb install lbtp/dist/lbtp.s.apk 安装到电视。

若编译的时候报错:
W: E:\APK Easy Tool\1-Decompiled APKs\lbtp_8.13.72_dangbei\res\values-v21\ ... 

加上这个参数 

-r,--no-res             Do not decode resources.

 --------------

方案二:

虽然界面简洁了一点,但投屏依然有广告,于是需要在路由器或者盒子修改host屏蔽掉

host在此:
127.0.0.1 hpplay.cdn.cibn.cc
127.0.0.1 h5.hpplay.com.cn
127.0.0.1 sdkauth.hpplay.cn
127.0.0.1 imdns.hpplay.cn
127.0.0.1 vipauth.hpplay.cn
127.0.0.1 rp.hpplay.cn
127.0.0.1 sl.hpplay.cn
127.0.0.1 519332DA.rtc.youme.im
127.0.0.1 hotupgrade.hpplay.cn
127.0.0.1 hotupgrade.hpplay.com.cn
127.0.0.1 pin.hpplay.cn
127.0.0.1 tvapp.hpplay.cn
127.0.0.1 hpplay.cdn.cibn.cc
127.0.0.1 image.hpplay.cn
127.0.0.1 gslb.hpplay.cn
127.0.0.1 rp.hpplay.cn
127.0.0.1 cdn.hpplay.com.cn
127.0.0.1 h5.hpplay.com.cn
127.0.0.1 adeng.hpplay.cn
127.0.0.1 conf.hpplay.cn
127.0.0.1 adcdn.hpplay.cn
127.0.0.1 g.dtv.cn.miaozhen.com
127.0.0.1 android.bugly.qq.com
127.0.0.1 alog.umeng.com
127.0.0.1 hotupgrade.hpplay.cn
127.0.0.1 pin.hpplay.cn

使用方法最简单的是去路由器后台添加自定义host屏蔽。(小米路由器AX系列web管理页已经精简了这个选项,需要使用手机软件“小米wifi”添加)
如果路由器不支持,则是修改盒子的host文件,需要开root,具体操作参考安卓手机修改host。

----> 卓手机修改host:  使用MT管理器进行修改,如果保存时遇到提示“挂载读写失败”,请使用syslock对system进行解锁。(Syslock解锁分区工具 我用v2.0.5 版本)

猜你喜欢

转载自blog.csdn.net/bigcarp/article/details/131118873