吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3297|回复: 20
上一主题 下一主题
收起左侧

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

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

      


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


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

    那么开始吧。

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





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

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



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

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



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



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



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



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

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

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



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

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



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

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



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



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



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



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

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



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

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


      

免费评分

参与人数 8吾爱币 +9 热心值 +7 收起 理由
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
3#
marlborogolo 发表于 2023-9-11 16:02
头像被屏蔽
4#
moruye 发表于 2023-9-11 21:35
提示: 作者被禁止或删除 内容自动屏蔽
5#
chai233202 发表于 2023-9-11 22:21
感谢分享,我虽一直很羡慕然,但一直学不会
6#
乱试佳人1985 发表于 2023-9-12 08:49
学习中,感谢分享
7#
frchris 发表于 2023-9-12 11:52
感谢分享,不过没学过app开发的我看着有些吃力
8#
Cribug666 发表于 2023-9-12 11:56
最近正好在研究,学习了
9#
l1258136193 发表于 2023-9-12 14:23
那如何把缓存清除呢?
10#
mytf 发表于 2023-9-12 15:38
感谢分享,学习一下
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

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

GMT+8, 2024-5-8 00:06

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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