应用广告方式

1、小平台应用

由于其没有自己的广告系统,它们一般会嵌入第三方广告平台的SDK来显示广告,所以只需要分析第三方平台的SDK就行。

2、大平台应用

由于其拥有自己的广告平台,需要对其单独进行分析。

去广告的场景

1、游戏

2、视频

3、其他

广告类应用的特点

对于一些包含广告的应用,它首先会进行广告的拉取,如果拉取到广告就会正常显示,否则就会跳过广告,所以我们既可以从网络请求着手,也可以从网络请求代码着手。

去广告的方法

对于有root权限的手机

1. 修改设备的hosts文件,对广告网络请求进行拦截替换

把生成的过滤规则添加到设备的hosts文件中,Android中的hosts文件存放的目录是在根目录下的/etc/hosts

典型软件代表:

AdWay

https://f-droid.org/en/packages/org.adaway/

https://github.com/AdAway/AdAway

2. 针对广告 API 进行拦截

需要使用第三方hook框架来对广告API进行HOOK拦截,例如Xposed

典型代表:

MinMinGuard

https://github.com/chiehmin/MinMinGuard

3. 使用iptable拦截网络请求

通过iptables命令设置filter表,针对来源是广告的做REJECT或是DROP操作。

典型代表:

droidwall

https://github.com/CfYz/droidwall

对于无root权限的手机

1. 使用VPNService功能进行网络请求拦截,目前很多去广告应用都是这么干的。

典型代表:

https://github.com/M66B/NetGuard

2. apk包反编译,修改广告请求相关代码,然后重打包,可以更改替换广告请求地址,也可以修改网络请求代码逻辑,总之使其请求结果失败就行。

3. 设置电脑作为代理,修改电脑的hosts文件

4. 修改路由器过滤规则,添加地址屏蔽规则

总结

去广告的方法基本可以总结为两类:

一、对广告的网络请求进行拦截

网络拦截主要有三类:

  1. 修改host文件进行拦截

  2. 使用iptable拦截

  3. 使用代理进行拦截

使用代理有三种方式:

  • 使用Android自带的VPNService

  • 修改路由器过滤规则

  • 设置电脑作为代理,修改电脑的hosts文件

二、对广告API代码调用进行拦截

广告API拦截分为静态方式和动态方式:

1. 静态方式:反编译APK源码,对广告相关代码进行静态的修改,然后重新打包

2. 动态方式:使用HOOK框架,对广告相关API的调用进行拦截

最后需要补充的是网络请求拦截的方式不仅可以进行广告过滤,而且可以进行网络管理、流量管理、网络安全控制、联网控制、WiFi安全通道等很多方面的实现,既然将手机的整个网络流量给控制了,具体可以干什么,大家也可想而知。

参考文章

http://t.cn/RECeFAt

http://blog.csdn.net/itleaks/article/details/39692391

https://www.jianshu.com/p/01f9f9954fc8

欢迎关注我的公众号:DroidMind

精品内容,独家发布

Android应用去广告方法盘点相关推荐

  1. android edge 去广告,Microsoft Win10 Edge浏览器去广告方法

    win10edge浏览器怎么去广告?win10 edge浏览器具备广告屏蔽方面的功能,很多朋友知道win10 edge浏览器具备广告屏蔽方面的功能,但是大多数不知道怎么使用,今天小编就为大家带来视频的 ...

  2. 酷我音乐盒去广告方法(我用的是酷我音乐盒2010贺岁版)

    这篇文章的思路来自于PPTV去广告,自从学会了用记事本打开文件清空内容并把属性设为只读的去广告方法后,我基本上把我电脑上所有的软件都用这个方法试了试.其中本文中酷我音乐盒去广告方法是我用了黑客穷举法才 ...

  3. 【更新】四种WinRAR永久去广告方法

    四种WinRAR永久去广告方法 Winrar官网下载地址 我的电脑是64位的 就以64位版本进行介绍 方法一: 用Spy++查看广告窗口类名 打开x64dbg附加winrar.exe,运行至winra ...

  4. 新版迅雷5.9开启会员皮肤去广告方法

    新版迅雷5.9发布后,无论是安装程序界面,还是操作界面都发生了很大变化,新版本采用全新的界面构架,并引入了会员功能, 迅雷会员可以享受去广告,更换会员专用皮肤等特权(顺便说下,会员皮肤丑4了...). ...

  5. 汇金操盘手简易去广告方法

    汇金操盘手是个不错的软件,但底下的广告部分非常刺眼,看起来很不爽. 简单的去广告方法就是:在hosts里面加上一行 127.0.0.1 lab.8884321.com 这样下面的广告部分内容就什么都不 ...

  6. 蓝叠模拟器去广告方法

    蓝叠模拟器去广告方法 当前使用的版本是4.2版本,模拟器启动时右下角会有弹窗,模拟器主页面也会有应用推荐,十分的烦人,经过多番折腾,终于去除了这些烦人的推广 1.右下角弹窗 打开蓝叠模拟器的安装目录, ...

  7. 织梦去版权方法DedeCms 5.7全站去版权去广告方法(后台)

    织梦去版权方法DedeCms 5.7全站去版权去广告方法(后台) 去除织梦后台登陆页面广告登陆后台-模块-文件管理器.路径/dede/templets/login.html 打开文件.找到以下代码并删 ...

  8. Android软件去广告教程

    Android软件.游戏等应用装了不少,大多数优秀的免费软件中,真正完全免费的应用确是不多,有不少游戏和软件中内置了广告. 这些广告对于开发者而言,是维持开发运营的收益的一种体现,不过对于用户来说,一 ...

  9. qq2013 sp1 去广告方法及代码

    qq右上角和左下角两个广告我只能说烦的要命,最近的TM2013都有广告了.不过TM2013去广告的方法已经有了,可以百度到,还比较方便.但是QQ2013更好看嘛. 重装qq,装完qq后,删除个人文件夹 ...

  10. 金山词霸2016.1.3.3 手动去广告方法

           该词典的2012版可以通过修改xml文件实现去广告,之前有人发过百度经验了.然而2016版中根本没有xml文件了,故需要新的方法. 先看一看去广告前后的效果对比: 金山词霸的广告主要 ...

最新文章

  1. PDF.NET数据开发框架操作MySQL实体类操作实例
  2. LeetCode 217 存在重复元素
  3. [react] 有用过react的Fragment吗?它的运用场景是什么
  4. oracle.cmd
  5. C++ const限定符和auto类型说明符
  6. ROS功能包或其中一部分找不到的奇葩问题及对应解决方案
  7. [转载]Qt之中文显示(QMessageBox、QLineEdit右键菜单等)
  8. html css 书签,CSS实现书签图案的效果
  9. 问题记录-Access数据库运行查询语句需要输入参数
  10. 视频教程 | 3D 跑酷小游戏实战开发(上)
  11. ggplot做双曲线阈值火山图
  12. 天之涯地之角,raid信息丢了怎么找—记磁盘阵列数据恢复过程
  13. oracle调用web severs,PL/SQL调用WebService
  14. redis系列之数据库与缓存数据一致性解决方案(简单易懂)
  15. 我心中的计算机作文500,我眼中的作文500字
  16. Java编程学习:初学者怎样学好Java
  17. kali系统与xshell远程连接
  18. 局域网通过ip查mac地址、通过mac地址查ip方法
  19. 科技让电影更有魅力:值得体验的CINITY影厅
  20. js 不得不知道的秘密

热门文章

  1. python3多线程进度条_python,多线程_Python:在多线程中使用进度条(progressbar)碰到的问题,python,多线程 - phpStudy...
  2. springboot二手交易平台毕业设计源码290915
  3. 第十一届“蓝狐网络杯”湖南省大学生计算机程序设计竞赛
  4. java 软件流程图使用什么_流程图怎么画,教你正确使用流程图模板
  5. 南京软件企业挨个介绍及计算机学习的一点经验交流
  6. C语言嵌入式系统编程修炼之道
  7. 利用C++的多态写一个电脑组装的具体实现
  8. 苹果蓝牙耳机怎么接电话_如何在开车时可以更安全的接电话——ROMAN R6000蓝牙耳机...
  9. 鼠标在微信开发工具中消失(而在手机模拟器以外可以显示)
  10. mysql 小于号转义_mybatis sql语句配置大于号小于号的处理