Mycool 发表于 2014-10-25 11:29:00

安卓比分软件去广告手记



相信还是很多朋友喜欢买足彩的,小弟也不例外,有时候电脑不方便就用手机看看比分什么的。
大家用的应该都是球探体育比分居多,这款app很不错,功能也很强大,还可以看赔率之类的指数。
无奈这款软件广告太多,实在影响心情。
本人之前也尝试去广告,只去除部分。幸得鬼哥提点,现在已经可以不显示广告了。
原装app广告如下:
1、启动界面。出现一个狗日的超人广告,点击以后就启动本机的彩客软件,没有的话就启动下载,需要点击跳过才能进入主界面。
2、比分页面,有N个横条广告。尼玛各种卖料。
3、主界面下面有个“发现”栏。这尼玛专场卖料。


OK。直接APKIDE反编译他。
直接打开res/layout目录,这个目录中存放的应该是布局文件,一些xml文件。
映入眼帘的就是一个ad_banner_item.xml文件,ad,又见ad,它很可疑!

打开看看:

尼玛里面硕大的汉字”广告位“让我也是欲罢不能啊。之前,我直接修改了LinearLayout 的属性不可见。这样虽然主界面的一个个横条没有了,但是在设置界面更改为夜间皮肤时,广告还会出现。
按照鬼哥的方法秒破之。

打圈的地方修改为0dip,这里的dip就是一种单位,用来设置里面各种控件的高度啊宽度啊之类的,可以理解为像素。
这里修改为0dip,那么控件就相当于隐藏出来了。是不是很像古老的frame框架挂马?哈哈。
好的,到这里,主界面广告条不见了。我们继续看发现一栏。同样看布局文件。
discovery_item.xml?discovery不就是探索、发现的意思吗。我们打开看。
果然,又尼玛显示”广告位“三个字,我们直接修改
LinearLayout的属性,加上android:visibility="gone"设置属性不可见即可。
如图:

至此,app主界面,以及发现栏的广告均不可见了。

继续登陆页面的超人广告,这种程序启动前的页面,一般叫做什么splash之类的,如何实现?只要看安卓的mainfest配置文件里面第一个启动的activity是啥。
打开配置文件。
如下图:

看activity的intent-filter属性里面的action和category属性即可确定这个SplashScreenActivity就是第一个启动的activity
我们打开他对应的smali文件,路径直接看上图横线处即可确定。
打开以后啥也看不懂,我们修改23行代码:const/4 v0, 0x0
改成const/4 v0, 0x1.保存编译。
为何要这样改?我也不明白,因为我也是新手,smali语法也不懂,目前还在老老实实先学android开发知识,打好基础。
当时我想的是,这句代码是给v0赋值成0,我们修改成赋值为1 ,那么程序流程估计就打乱了,说不定就可以达到效果。试了下,果然成功了。
具体的分析,等小弟以后水平达到了再说吧。
至此。上面提到的广告都不见了。
还有去升级提示的内容。我们下次见。

水波摇曳 发表于 2014-10-25 11:42:57


那个 const/4 v0, 0x0 语句,应该是是否展示Splash的开关,
就像程序员开发时,自定义设置的Log是否显示的开关一样,都是通过赋值语句控制的。

Mycool 发表于 2014-10-25 12:00:11

水波摇曳 发表于 2014-10-25 11:42
那个 const/4 v0, 0x0 语句,应该是是否展示Splash的开关,
就像程序员开发时,自定义设置的Log是否显示的 ...

因为界面右上角有个点击跳过按钮,所以当时我从这里开始入手找代码,找啊找,最后找到这句话,改了成功了。也不明白具体什么原因,还是得学习啊

vxzv 发表于 2014-10-25 12:57:14

多谢楼主!小白正在学习中。。。

默小坑 发表于 2014-10-25 16:36:29

学习了,,,

JackIO 发表于 2014-10-28 18:10:52

楼主威武。

ndy 发表于 2014-11-22 19:33:21

感谢楼主分享教程

荆轲刺秦琼 发表于 2014-12-16 17:37:46

{:3_46:}   到处都有鬼哥的身影啊

烈火 发表于 2014-12-18 21:41:47

勇于尝试,勤于动手,脑筋多动! 赞

哆啦B梦 发表于 2015-2-2 20:50:16

感谢分享
页: [1] 2
查看完整版本: 安卓比分软件去广告手记