【散装破文】如何有效率的去除软件广告(三)

查看 67|回复 7
作者:Phantom可   
有人说需要前三节课程,由于原图已没保存,所以都是直接搬过来的。
    散装系列:是以日常实用小技巧所展开的系列
经过前两节课,想必大家对去除广告有了初步的了解,接下来将演示从软件入口着手移除第三方广告。
    目前广告基本分为两大类,一种是接入第三方广告sdk,另一种则是自营广告,就类似出租广告位那种,不需要对接sdk。至于前者是目前这几课中所说的,后者将在后面几课会讲述。
   然而第三方广告sdk,一般分两种,第一种就像google,qq,快手这类广告平台,另一种则是聚合类,就是把多家知名广告商聚在一个sdk里对接,所以平常在软件里看到有好多家的广告基本都是使用的聚合广告平台。
   无论国内外,都有不少聚合平台,比如之前说的tradplus,就是一个聚合广告。里面包含了facebook广告,穿山甲广告等等。
   之前讲了国外的广告,今天就讲讲国内的广告。
   本次演示软件是某求助帖里的菜谱app,至于那个帖不懂跑哪里了。
   那么开始吧。
   首先从AndroidMainfest看看都有什么广告吧。从图中可以看到加入了好几家热门的广告商。


131931v9yq35c83vkvgkkv.jpg (90.13 KB, 下载次数: 0)
下载附件
2023-9-11 15:31 上传



131936vpbwsjefgzl40lla.jpg (126.43 KB, 下载次数: 0)
下载附件
2023-9-11 15:31 上传



131944mooerrmv4ozieggr.jpg (83.41 KB, 下载次数: 0)
下载附件
2023-9-11 15:31 上传



131956l8u3ffw5w8gfq6e0.jpg (174.38 KB, 下载次数: 0)
下载附件
2023-9-11 15:31 上传

   一般上如果一个app里存在好几家广告,基本都会是聚合类型的广告。对于初学者,我想大部分学到的方法就是扣字眼。比如看到QQ的广告,就把QQ的相关字眼去除,看到快手广告就把快手广告相关字眼去除。所以往往会导致一个APP改得乱七八糟,同时有时候效果也不理想,可能出现各种错误信息提示。
    什么是聚合广告?如果聚合是一个控制台,那么各家广告就是它的子分支,然后通过这个控制台操控着这些子分支,以根据用户状态将在软件里显示哪家广告。所以扣字眼的去广告,其实仅仅只是把子分支的广告给扣掉而已,但控制台其实还活着。简单点的说就是boss没打,只是把小兵清除了而已。
    古话里有那么一句话,所谓擒贼先擒王。只要王被擒了,兵也就散了。
    今天就从程序入口下手吧。找入口需要找软件的application类,AndroidMainfest可以查看。一般所有sdk都会在程序入口进行初始化,也就是图中红线的位置。所以可以直接在dex里定位到这个类查看代码,找出广告初始化。如果说此类没找到初始化代码,那么就可能在蓝色标记的位置。至于绿色的地方则是友盟统计的配置。


132104m3z9k6dc0f9jzf73.jpg (165.65 KB, 下载次数: 0)
下载附件
2023-9-11 15:31 上传

    现在可以反编译dex定位到cn.ecook.jiachangcai.HomeCookApplication类,接着代码将会从onCreate开始。


132141gqhlb9sk8l14lhzl.jpg (116.95 KB, 下载次数: 0)
下载附件
2023-9-11 15:31 上传

    所以需要阅读onCreate方法内的代码找出广告初始化代码。
    由于这是教学,我就不一行一行的阅读了,我直接定位吧。图中划线的地方都是在onCreate方法里,最下边两条路径是来自adManager,自然而然就知道它是和广告相关的控制。如果想具体了解的话,可以跟进去这段代码了解,它是一个实例化广告广播的过程。所以可以直接把这两条代码给删除了。至于最上边那条initAfterAgreePrivacy,中文意思是当用户同意隐私协议之后的一个初始化过程。所以可以跟进这条代码看看。


132218xjl24xeeq4q2o6qm.jpg (117.67 KB, 下载次数: 0)
下载附件
2023-9-11 15:31 上传

   在这个方法里,可以看到有不少的初始化,比如腾讯bugly,admobile,友盟统计,adsuyi聚合广告。


132334fryy440h1mnm6zgm.jpg (100.9 KB, 下载次数: 0)
下载附件
2023-9-11 15:31 上传



132355pnzfpadev8beydns.jpg (20 KB, 下载次数: 0)
下载附件
2023-9-11 15:31 上传



132404sdmmmrdwczrrd9wv.jpg (153.63 KB, 下载次数: 0)
下载附件
2023-9-11 15:31 上传



132411mj0j23qg224qt8o4.jpg (24.9 KB, 下载次数: 0)
下载附件
2023-9-11 15:31 上传

   然而主要广告都是来自adsuyi聚合控制。所以只要把adsuyi初始化删除,就可以完整的移除广告了,至于其他几个,如果不想要的,也可以直接把它们的初始化删除掉即可。


132441s1ttfp3dfrwip2rp.jpg (125.11 KB, 下载次数: 0)
下载附件
2023-9-11 15:31 上传

   到这里想必各位也知道此次教学也来到了尾声。最后就上一张效果图吧。


132451izpjbpqtvhpzzavj.jpg (133.71 KB, 下载次数: 0)
下载附件
2023-9-11 15:31 上传

广告, 下载次数

marlborogolo   

写得很详细,感谢低调大佬
nanbeiduoqilu   

感谢分享
eddiecgc   

多谢分享!!!
danshiyuan   

感谢楼主分享
莫奇   

流程很清晰,若能够拿出时间,一定能去除广告
王成   

手机端教程可以的,支持
Castlana   

感谢分享
您需要登录后才可以回帖 登录 | 立即注册

返回顶部