文章目录
前言
打开,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干掉也可以。

保存修改后直接回编译。再次安装打开,开屏广告也不见了。完结撒花。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!