安卓逆向006之修改APK资源去广告

文章目录

  • 前言
  • 分析
  • 完善
  • 思路:

前言

打开,APP总是有开屏广告,比如下边:

在这里插入图片描述

好不容易进来,发现刚刚只是冰山一角等等,后边不做演示了。

在这里插入图片描述


这里有一点,要说一下,我们每隔一段时间打开游戏,广告内容都是不同的。且紧跟时代的“ 潮流 ”,这里就可以说明问题了,这是软件联网自动获取的。既然这样,我们就直接从软件的“ 网络 ”开刀。

分析


反编译APK,打开AndroidManifest.xml查看权限,发现下边都是网络的关键词。如internet、network、wifi等等。

在这里插入图片描述


这里一般有两个办法:~留下Internet,删除network与WiFi(这两个是获取网络权限的)~留下Internet,其他全删(方便,但是有可能出问题)为什么要留下Internet?~因为在游戏中还有需要网络的地方,就由他去完成了,所谓“ 做人留一线 ”哈哈。先试试,方便快捷的办法。

在这里插入图片描述


记得先卸载掉原本的APK,在将上述修改的APK回编译回去,安装。发现开屏广告还在,但是5秒的倒计时没了,且内容没了。

在这里插入图片描述

后边也比较的干爽,也是没有广告了。

完善


这里“ 一打开 ”APP就有广告,还是让人微微不爽。猜测一下这个一打开就弹得广告是什么?嗯嗯,没错,是打开APP的第一时间,先加载的广告“ activity ”(活动或者说界面)。现在的问题是:我们怎么知道打开APP首先打开的activity是哪个呢,毕竟这个AndroidManifest文件那个多的activity标签。即如何寻找APP的入口点。

在这里插入图片描述

思路:


第一种:只要是在activity中,“ MAIN ”与“ LAUNCHER ”一起出现,那个此activity就是入门点。

在这里插入图片描述


第二种:打开cmd,输入“ adb devices ”获取当前电脑与模拟器的连接状态。假如一次获取不到,就多输入几次。出现类似这个“ 5570 ”的字眼就说明,链接成功。

在这里插入图片描述

	此时输入“ adb shell dumpsys activity top ”来获取模拟器最顶层的活动页面。一个回车,什么也没有。

在这里插入图片描述


为什么没有?因为模拟器此时,还没有运行APK。当程序运行的时候,再次执行,直接破获到。

在这里插入图片描述

对比一下,没得问题。

在这里插入图片描述


此时的思路就比较明确了,直接获取游戏运行的界面,将游戏界面的属性设置为“ MAIN ”与“ LAUNCHER ”。获取得到游戏运行界面的名字为“ org.cocos2dx.lua.AppActivity ”

在这里插入图片描述

在代码中寻找,发现就在他原来的下边;

在这里插入图片描述

对比发现,缺失的属性仅仅是“ LAUNCHER ”,

在这里插入图片描述

删除广告属性,替换游戏界面属性,当然直接将上边广告的activity干掉也可以。

在这里插入图片描述


保存修改后直接回编译。再次安装打开,开屏广告也不见了。完结撒花。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部