硕士生
 
- 金币
- 2801
- 好评
- 0
- 信誉
- 90
|
本帖最后由 梦境虚幻 于 2026-1-6 23:47 编辑
软天空有两处广告,一个是开屏广告还有一个是下载广告,这两个都可以去除首先看app入口,在AndroidManifest.xml里面有com.rtk.app.main.FirstActivity的入口
先去里面看一下
从Smali代码中我可以看出:
这是一个启动页(Splash Activity)
它使用了一个计时器,在E()方法中设置了一个1388毫秒(约5秒)的定时任务:
- const-wide/16 v2, 0x1388 # 0x1388 hex = 5000 decimal = 5秒
- invoke-virtual {v0, v1, v2, v3}, Ljava/util/Timer;->schedule(Ljava/util/TimerTask;J)V
复制代码
在B()方法中,它调用了广告加载:
- invoke-virtual {v2, p0, v1, v3, v0}, Lcom/rtk/app/tool/d/a;->g(Landroid/app/Activity;Ljava/lang/String;Landroid/view/ViewGroup;Lcom/windmill/sdk/splash/WMSplashAdListener;)V
复制代码
该页面会加载开屏广告(使用了WindMill SDK)
既然B()调用了广告加载就看一下他被谁调用了怎么调用的
- :cond_1c
- invoke-static {p0}, Lcom/rtk/app/tool/t;->t1(Landroid/content/Context;)Z
- move-result v1
- if-nez v1, :cond_2b
- const-string v1, "not NetWork"
- .line 6
- invoke-static {v0, v1}, Lcom/rtk/app/tool/c0;->s(Ljava/lang/String;Ljava/lang/String;)V
- .line 7
- invoke-virtual {p0}, Lcom/rtk/app/main/FirstActivity;->C()V
- return-void
- :cond_2b
- const-string v1, "loadAd:true"
- .line 8
- invoke-static {v0, v1}, Lcom/rtk/app/tool/c0;->r(Ljava/lang/String;Ljava/lang/String;)V
- .line 9
- invoke-direct {p0}, Lcom/rtk/app/main/FirstActivity;->B()V
- .line 10
- invoke-direct {p0}, Lcom/rtk/app/main/FirstActivity;->z()V
- return-void
复制代码
看到了,判断t1方法是否为0,如果是0就连不上广告(not NetWork),也就不显示广告了。
修改t1返回值为0即可
改t1返回值为0后有个副作用就是有的下不了
然后找一下谁调用了t1
发现这个方法,用来下载的
Lcom/rtk/app/tool/i/i;->k(Landroid/content/Context;Lcom/rtk/app/bean/AdBean$DataDTO$DownAdDTO;I[Ljava/lang/String;)V
里面的if-nez p3, :cond_1d改成 goto :cond_1d即可
- :cond_f
- invoke-static {p0}, Lcom/rtk/app/tool/t;->t1(Landroid/content/Context;)Z
- move-result p3
- if-nez p3, :cond_1d
- const/16 p1, 0x7d0
- const-string p2, "请检查网络"
- .line 3
- invoke-static {p0, p2, p1}, Lcom/rtk/app/tool/f;->a(Landroid/content/Context;Ljava/lang/String;I)V
- return-void
- .line 4
- :cond_1d
- instance-of p3, p0, Landroid/app/Activity;
- const-string v0, "DownLoadMethodForUp"
复制代码 |
|