第一部分:软件准备。 1.apktool————对apk执行分解(反编译)和合成(编译)的工具 2.dex————对classes.dex分解(dump)和合成(build)的工具 3.APKsign————apk签名工具 4.notepad++或者Em edit————文本编辑工具 5.java环境变量配置————apk签名需要 前三个工具打包为a.d.cn文件如下可下载: 本帖隐藏的内容需要回复才可以浏览 a.d.cn.zip (4.08 第二部分:去广告原理。 目前Android的广告供应商有两个,一个是Admob,一个是Google Ads,前者已被后者收购,但两者SDK依然独立。
Res\layout内的xml文件广告代码一般格式如下: Google Ads的广告代码为: 广告下载源 http://r.admob.com/ad_source.php http://mm.admob.com http://api.admob.com Google Ads的广告下载源: http://pagead2.googlesyndication.com/pagead/afma_load_ads.js 以上广告源是比较规范的广告源,但是现在市面的软件广告源十分不规范,即使屏蔽了上述广告源,软件还是可能显示广告的。 第三部分:实际操作 2.反编译
本帖隐藏的内容需要回复才可以浏览3.修改 打开notepad++,按ctrl+F,调出搜索对话框,如图:
记得要搜索目录,选第三个选项卡。 我们需要搜索的关键词一般主要有以下几个: admob.com admob google.com http:// 如下图:notepad++下面会显示搜索出来的文件位置,点击跳转到相应的文件,一般为*.smali文件。 然后我们将http:// 开头的字符串改成0.0.0.0或者127.1.1.1等无效的ip。使广告源无法访问。改完记得保存文件。 如果搜索的是非IP地址,那么将字符串该乱即可,例如google.com改成a.com等,个人经验而谈。 4.编译
—————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————— 至于前面提到的Res\layout内的xml中的代码处理:简单介绍下: Admob的广告代码为: Google Ads的广告代码为:
通过notepad++将搜索路径定位到res文件夹(就是反编译后的res文件夹),代码只搜索开头就行了,如:com.admob.android.ads.AdView 和 com.google.ads.GoogleAdView。android:layout_width="fill_parent" 修改为 android:layout_width="0.0dip" 此过程就是将广告显示的位置缩小到0像素,即可完成不显示广告,但现在广告源泛滥,可能有时不奏效的,所以还要按照上述操作进行。 ——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————— 本帖隐藏的内容需要回复才可以浏览关于无法通过apktool反编译,或者编译不成功,或者编译成功安装出错的软件,去广告的办法。(其实去广告完全可按以下操作完成) 直接解压缩软件(rar,7z等)打开apk,提取其中的classes.dex文件。 放入a.d.cn/dex/文件夹中,如图 然后运行dump.bat对classes.dex文件反编译,得到out文件夹,如下图 修改完毕后保存文件,运行build.bat,稍等片刻会生成out.dex文件,如下图 |