吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4283|回复: 21
收起左侧

[Android 原创] 【散装破文】如何有效率的去除软件广告(二)

  [复制链接]
低调(d-iao) 发表于 2023-9-11 15:25
     
     有人说需要前三节课程,由于原图已没保存,所以都是直接搬过来的。

      


       散装系列:是以日常实用小技巧所展开的系列
上一节课已经说明了广告的实现原理,并且应该也学会了如何快速定位,但是处理广告手法并不是只有一种。appid在上节课并未演示,所以这次就通过appid处理吧。


     这次演示的软件是一款家常菜谱,同样也是从gp下载。

    那么开始吧。

    本次广告只有一家,就是google自家的,先来看看广告吧。

182527u8stsss96bxx6lx6.png
182535gj1jerg19aecjez7.png
182543xpc5zjp4ryyk2x4i.png

     然而凡接入第三方sdk都必须在AndroidMainfest.xml里进行配置,平常看到的穿山甲广告,快手广告,qq广告等等都是属于第三方广告sdk,所以查看AndroidMainfest也能对软件植入了哪家广告一目了然。

     图中的AndroidMainfest里可以看见,圈圈处就是广告的appid,google的都是以ca-app-pub作为开头(具体看google广告的开发手册,上节课已讲过,这节课就不再演示。),至于标记处就是接入广告的配置。

182629v42zq8kq4z728qz4.png

     所以只需要将ca-app-pub开头的appid删除掉即可完成移除广告。但是google会对appid进行检测,仅仅删除appid会导致闪退。至此还需要对dex部分进行修改。

     在dex里搜索ca-app-pub可以得出3个结果,从下到上逐一看。

182721bk5px7x871p58x51.png

     第一个是Boolean返回值,比较字符串是否匹配,这里强制让它返回0。

182810e04fzi8yqge481ef.png

     第二个则是返回appid字符串类型,这里直接把红线割掉的那个跳转删除,让它返回一个空白即可。

182817bsjt00p9pvysxx8j.png

     第三个是一个void,可以直接在方法入口加个return-void即可,不让代码继续往下执行。

182828bo3he3jew3o3jx3j.png

     当都完成后,就可以安装了。

==============安装中==============

     啊~怎么还有广告呀?掉链子了。T.T所有广告都完整的还在,并未去除成功。

184120rrtobqu658609o9a.png

     既然从AndroidMainfest里只看到一家广告,所以深信着可能是还存在其他的appid,配置里的只是个幌子。

     这时选择了对整个包进行搜索,看看是不是哪里漏掉了?可是并未找到相关结果。说明resources.arsc里并没有存放着appid。

182924b354pukprr1e4mdn.png

      那么可以以此推断可能性,可能appid被加密了,又或者appid是通过联网动态加载。有了这些前提的假设,接下来就要再假设开发者可能存放的位置,不外是assest目录里,dex里,网络数据里。

     结果从assest里看到了一个名为adConfig的文件,ad开头很明显和广告有关。Config中文意思则是配置,全称就是广告配置。

183018f21eqyxvtqkklp77.png

     打开一看,确实经过加密了。要解密吗?不需要,只需要找出哪里调用它就好。

183056xvrc1zeasr5s44rs.png

     dex里搜索出来的结果只有一个。

183112rq0oco2culoci4il.png

     它在一个void类型的方法里,那么就别让它读取了,直接在方法入口return-void即可。

183130k1yg7qse86j1jjqg.png

     经历了千辛万苦之后,总算完成了。再次安装打开。

     咦,还有广告T.T 尴尬了。

184131bxyhntmpdm462qt1.png

     其实是因为google的广告sdk在初次启动的时候会写入缓存,所以后续修改后会导致看不见效果。只要把缓存清除了重新打开就好了。

      此次教学就到这里,效果如图。

183219iw4wet7jd82668d5.png
      

免费评分

参与人数 9吾爱币 +11 热心值 +8 收起 理由
hualy + 2 + 1 太酷了
tangxiangyou + 1 + 1 谢谢@Thanks!
烈火 + 1 + 1 热心回复!
SHUAIMOU + 1 + 1 用心讨论,共获提升!
fssq121 + 1 + 1 学到了,试验成功了,谢谢
debug_cat + 1 + 1 谢谢@Thanks!
800y + 1 + 1 谢谢@Thanks!
yuechu41 + 1 用心讨论,共获提升!
Phantom可 + 2 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

ericzhao666 发表于 2023-11-16 11:22
第一个是Boolean返回值,比较字符串是否匹配,这里强制让它返回0。

这里为什么强制让返回false呢?看着像是匹配appid格式的函数啊
aa123dami 发表于 2023-9-11 15:55
marlborogolo 发表于 2023-9-11 16:02
头像被屏蔽
moruye 发表于 2023-9-11 21:35
提示: 作者被禁止或删除 内容自动屏蔽
chai233202 发表于 2023-9-11 22:21
感谢分享,我虽一直很羡慕然,但一直学不会
乱试佳人1985 发表于 2023-9-12 08:49
学习中,感谢分享
frchris 发表于 2023-9-12 11:52
感谢分享,不过没学过app开发的我看着有些吃力
Cribug666 发表于 2023-9-12 11:56
最近正好在研究,学习了
l1258136193 发表于 2023-9-12 14:23
那如何把缓存清除呢?
mytf 发表于 2023-9-12 15:38
感谢分享,学习一下
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 11:58

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表